如何在禁用后再次返回点击?

时间:2011-11-01 17:47:15

标签: jquery onclick bind unbind

如何在禁用后再次点击?

例如,当页面加载时,我想关闭菜单上的所有可点击按钮,

$(".menu > ul > li > a").click(function(){return false;});

3秒后,我想重新打开它们,所以我这样做,

var timeout = setTimeout(function() {
     $(".menu > ul > li > a").click(function(){return true;});
}, 3000 ); 

它当然不起作用!我该如何解决这个问题?

2 个答案:

答案 0 :(得分:3)

最好不要绑定和取消绑定事件处理程序

http://api.jquery.com/unbind/

var handler = function() {
    return false;
};
$(".menu > ul > li > a").bind('click', handler);
var timeout = setTimeout(function() {
    $(".menu > ul > li > a").unbind('click', handler);
}, 3000);

答案 1 :(得分:2)

你试过吗

var timeout = setTimeout(function() {
 $(".menu > ul > li > a").unbind('click').click(function(){return true;});
}, 3000 );