use*_*510 7 javascript jquery bind settimeout unbind
我已经看过类似的问题,但提供的答案涉及按钮而不是div元素.当我单击带有id的div元素时click,单击事件处理程序将被禁用,unbind()并将计时器设置为2秒.2秒后,应再次启用click事件处理程序bind().问题是click事件处理程序似乎没有"反弹".我将文本附加到另一个div元素以检查click事件处理程序是否处于活动状态.
这是我的jsfiddle:
nnn*_*nnn 14
解决整个问题的另一种方法是不打扰解除绑定和重新绑定,只使用"禁用"标志:
$(document).ready(function(){
var clickDisabled = false;
$('#click').click(function(){
if (clickDisabled)
return;
// do your real click processing here
clickDisabled = true;
setTimeout(function(){clickDisabled = false;}, 2000);
});
});
Run Code Online (Sandbox Code Playgroud)