2012-12-26 129 views
1

我想將jQuery Isotope shuffle方法設置爲每隔30秒對加載的DOM元素執行動畫隨機播放,以便加載插件的某人在頁面上。jQuery同位素隊列隨機播放/隨機動畫

我已經成功將動畫綁定到.hover()事件,但當我使用setInterval().queue()時,似乎無法啓動它。無論用戶交互/輸入如何,我都希望動畫能夠觸發。

var iso_shuffle = function() { 
    $('#isotope').isotope('shuffle'); 
} 

setInterval(iso_shuffle(), 2500); 

爲什麼前面的代碼不會觸發隨機的,但這樣做:

$('#isotope').hover(function() { 
    iso_shuffle() 
}); 

乾杯

回答

4

iso_shuffle()立即調用該函數。該函數什麼都不返回。所以你setInterval其實就是做等價的:

setInterval(undefined, 2500); 

您想使用的功能名稱作爲回調setInterval

setInterval(iso_shuffle, 2500); 
+0

唉,我傻......非常感謝! – robabby

2

你需要傳遞函數本身,而不是它的返回值:

setInterval(iso_shuffle, 2500);