setTimeout不能处理带有Packery的click事件

时间:2013-09-26 22:59:38

标签: javascript jquery

我正在尝试向Packery中的resetItems方法添加延迟。我在下面的函数中添加了一个超时,但它仍会在点击时立即触发。

我错过了什么?它是否应该环绕下面的线?我尝试了但是然后功能根本不起作用(但是我不是说我做了它正确 ...)

var $container = $('.packery');

$container.packery({
itemSelector: '.item',
gutter: 0
});

$(".reset").bind("click", function() {  
setTimeout(function(){       
    $('container').addClass('active');},1500);
    $container.packery();    
    return false;
});

2 个答案:

答案 0 :(得分:1)

您需要在setTimeout中指定延迟。

setTimeout(function(){       
    $('#container').addClass('active').packery();    
    return false;
},1000); // 1 second

延迟以毫秒为单位指定。否则它defaults to zero(参见步骤5)并将其推迟到下次定时器触发时。

答案 1 :(得分:-1)

你的$('容器')选择器错了? 如果是ID,请在名称前添加#。 它是一个类,添加。在名字之前。

编辑: 我上面的那个人提到了延迟,但显然你已经有了这个(1500)。 你的花括号不是缩进的。