【发布时间】:2013-01-22 15:04:42
【问题描述】:
我有一些问题,我需要阻止/关闭一些点击操作一段时间。我想要做的是在点击后触发所有操作,但在处理此操作时阻止此点击。所以这是我的代码,谢谢帮助:
carousel_controls_buttons.live('click', function(e){
carousel_controls_buttons.attr('disabled', 'disabled');
setTimeout(function(){
e.preventDefault();
$(xml).find("main_menu").each(function (){
// some actions
});
carousel_controls_buttons.removeAttr('disabled');
}, 450);
});
【问题讨论】:
-
你使用
.live的方式很奇怪。它也可能是.click在这种形式中,它不会正确处理动态元素,除非在添加新元素时更新carousel_controls_buttons变量,此时您可以在那里绑定事件而不是使用 live。 -
我能问一下你为什么要首先阻止吗?
-
为什么不禁用按钮一秒钟呢?
-
您阻止默认操作为时已晚,您必须从外部
setTimeout执行此操作。 -
您的代码按原样工作。你的问题到底是什么?看起来你在问如何做你的代码已经在做的事情。 jsfiddle.net/m2QhK/1
标签: javascript jquery click preventdefault