jQuery:不添加更多点击

标签 jquery click jquery-effects

我希望能够正确地解释自己。
我们有这样的东西(一个简单的例子):

$('#click').click(function() {
    $('#a').animate({width: 'toggle'}, 1500);
    $('#b').animate({width: 'toggle'}, 1500);
    $('#b').animate({width: 'toggle'}, 1500);
});

现在,如果我在“#click”上点击几次,即使在效果完成之前,我的重复点击也会被添加在一起,并且该函数会执行多次(这是一件非常不愉快的事情,尤其是在使用“hover”时,因为你知道)。

但我希望仅在效果完成时才检测到点击。我该怎么办?

我阅读了有关 queue 的文档,但我不确定这在这种情况下是否有效。
我可以举一些例子吗?

谢谢。

最佳答案

尝试:

var isAnimating = $("#a").is(':animated');

当元素有动画时,上面的代码将返回 true。

关于jQuery:不添加更多点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18682686/

相关文章:

javascript - AngularJs ng-repeat 是在复选框上注册两个点击事件吗?

jquery - jQuery 动画效果有哪些选项?

jquery - 将动画添加到自举 Accordion 中,同时保持适当的加减号

jQuery 子级 href 单击不起作用

jQuery 选择器 : How do I select the outer div?

javascript - 如何检测页面上已访问和未访问的链接?

javascript - jQuery UI 效果导致 iframe 重新加载

javascript - 如何减慢 JQuery 的效果?

javascript - 滚轮并不总是滚动页面

javascript - 如何将 jQuery 包含到我的应用程序中?