我想将jQuery Isotope shuffle方法设置为每隔30秒执行加载的DOM元素的动画随机播放,有人在页面上加载插件。
我已成功将动画绑定到.hover()
事件,但在使用setInterval()
或.queue()
时似乎无法触发它。无论用户交互/输入如何,我都想激活动画。
var iso_shuffle = function() {
$('#isotope').isotope('shuffle');
}
setInterval(iso_shuffle(), 2500);
为什么以前的代码不会触发随机化,但这样做:
$('#isotope').hover(function() {
iso_shuffle()
});
干杯
答案 0 :(得分:4)
iso_shuffle()
立即调用该函数。该函数什么都不返回。所以你的setInterval
实际上相当于:
setInterval(undefined, 2500);
您希望将函数名称用作setInterval
的回调:
setInterval(iso_shuffle, 2500);
答案 1 :(得分:2)
您需要传递函数本身,而不是其返回值:
setInterval(iso_shuffle, 2500);