2011-03-26 15 views
1

我爲我的網站運行LazyLoad腳本,並有一個小的方面的問題。Jquery LazyLoad.js問題與調整窗口後加載

Im在水平滾動(從左到右)上使用Lazy Load加載相當寬的圖像。該腳本完美工作,並在200px(或任何默認值)內褪色。

但是我注意到如果窗口打開到一個較小的尺寸,然後打開到完整的窗口,佔位符,Lazy Load只有在較小的窗口大小期間加載了「In View」的圖像。它一旦滾動條被移動,但我很好奇,如果有任何腳本我可以沿線添加'當窗口調整大小,重新測量觀看空間'

希望這是有道理的。我對JavaScript知之甚少,所以如果有人知道如何解決這個問題,就好像你正在跟一個5歲的孩子一步一步地說話:)

回答

1

找到這行代碼(在lazyload.js中) :

$(settings.container).bind("scroll",function(event){var counter=0;elements.each(function(){if($.abovethetop(this,settings)||$.leftofbegin(this,settings)){}else if(!$.belowthefold(this,settings)&&!$.rightoffold(this,settings)){$(this).trigger("appear");}else{if(counter++>settings.failurelimit){return false;}}});var temp=$.grep(elements,function(element){return!element.loaded;});elements=$(temp);}); 

,並添加後,這個:

$(window).bind("resize",function(event){$(settings.container).trigger('scroll');}); 
0

設置failure_limit爲10,則插件停止搜索圖像,以尋找倍低於10倍後的圖像加載。如果你有一個時髦的佈局設置這個數字高到解決您的問題,例如:

$('img').lazyload({effect:'fadeIn', failure_limit:40});