我目前正在使用 jQuery lazyload 插件来加载图像。我正在使用 javascript 替换 src 和 data-original 属性。这会导致负载轻微闪烁。我想知道jquery是否有办法只选择折叠下方或折叠上方的图像,这样我就可以避免这种闪烁。
var $imgs = $("img:not(.nolazy)");
$imgs.each( function(){
var imgSrc = $(this).attr("src");
$(this).attr("data-original",imgSrc).attr("src","gray.gif");
});
$imgs.lazyload({
effect : "fadeIn"
});
编辑:@Jason Sperske 很好的答案。这是我解决闪烁问题的代码:
var wH = $(window).height();
var $imgs = $("img:not(.nolazy)");
$imgs.each( function(){
var imgPosition = $(this).offset();
if(imgPosition.top > wH){
var imgSrc = $(this).attr("src");
$(this).attr("data-original",imgSrc).attr("src","gray.gif");
}
});
$imgs.lazyload({
effect : "fadeIn"
});