2013-12-12 46 views
0

好的,我已經得到了一些腳本,當某些元素變得可見時,這些腳本就會添加一個類名稱。addClass與多個元素之間的輕微延遲

var t = $("#div").offset().top; 

$(document).scroll(function(){ 
    if($(this).scrollTop() > t) 
    { 
     $('.image').addClass('img-vis'); 
    } 
}); 

有12個類名爲lazy的元素,我希望在每個類之間稍加延遲。

+1

「類名懶」 懶惰或圖像? –

+0

[http://luis-almeida.github.io/unveil/](unveil)是你的朋友,以防萬一。 – moonwave99

+0

對不起,classname圖片 – Alex

回答

4

試一下:

$('.image').each(function (i) { 
    $(this).delay(i*1000).queue(function (next) { 
     $(this).addClass('img-vis'); 
     next(); //used just to dequeue 
    }); 
}); 
+0

不錯的做法。 Upvoted。 – melancia

+0

精美的作品,謝謝! :d – Alex

0

你的意思是這樣的:(即1000毫秒)

$(document).scroll(function(){ 
    if($(this).scrollTop() > t) 
    { 
     setTimeout(addImgVis, 1000); 
    } 
}); 

function addImgVis(){ 
    $('.image').addClass('img-vis'); 
} 

將增加1類其次,它執行瓦特/ UR滾動功能後。

+1

它會一次又一次地將所有圖像添加到所有圖像中。您的選擇器正在使用class =圖像返回所有圖像。 – melancia