我有一堆缩略图,它们的样式为visibility: hidden;
,以便它们都保持正确的布局。页面完全加载后,我有一个jQuery函数来淡入它们。当它们的样式设置为display: none;
时,这个方法是有效的,但很明显布局会出错。有什么建议吗?
这里是淡入代码:
$('.littleme').fadeIn('slow');
我有一堆缩略图,它们的样式为visibility: hidden;
,以便它们都保持正确的布局。页面完全加载后,我有一个jQuery函数来淡入它们。当它们的样式设置为display: none;
时,这个方法是有效的,但很明显布局会出错。有什么建议吗?
这里是淡入代码:
$('.littleme').fadeIn('slow');
添加几个类似于这样的链式调用:
$('.littleme').css('visibility','visible').hide().fadeIn('slow');
这将使其在淡入之前更改为display:none
,并在1帧内占据该区域。
尝试使用不透明度和 animate()
:
$('.littleme').css('opacity',0).animate({opacity:1}, 1000);
<span style="opacity:0;">我被隐藏了</span>
显示: $('span').fadeTo(1000,1)
隐藏: $('span').fadeTo(1000,0)
DOM 布局中保留了空间
你不能使用fadeTo(duration, value)吗?这样你就可以淡入淡出到0和1,这样就不会影响文档流了...
试着匹配隐藏元素?
$(".littleme:hidden").fadeIn();
$('.littleme').fadeOut(speed,function(){$('.littleme').css("visibility","hidden").css("display","");});
:-) пјҲжіЁпјҡиҜҘд»Јз ҒжҳҜдҪҝз”ЁjQueryеә“зҡ„JavaScriptд»Јз ҒпјҢз”ЁдәҺе°Ҷзұ»еҗҚдёә"littleme"зҡ„е…ғзҙ ж·ЎеҮәпјҢ并еңЁж·ЎеҮәе®ҢжҲҗеҗҺе°Ҷе…¶еҸҜи§ҒжҖ§и®ҫзҪ®дёәйҡҗи—Ҹ并е°ҶжҳҫзӨәи®ҫзҪ®дёәз©әгҖӮпјү - eruciformdisplay: none
,你可以使用$('.littleme').fadeTo(speed, 0);
,这不会在最后设置display
,达到相同的效果,但更简单 :) - Nick Craver