点击后,jQuery会阻止其他事件

前端之家收集整理的这篇文章主要介绍了点击后,jQuery会阻止其他事件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图阻止链接和项目的多次点击,这是导致问题。

我使用jQuery将点击事件绑定到按钮(jQuery UI)和图像链接(< a>< img />< / a>)。

有一种方法可以一次性防止点击发生后其他事件触发?

或者我必须保留一个名为_isProcessing的全局变量,并将其设置为每个事件处理程序的true?

谢谢

编辑:(澄清)
感谢您的答案,我的问题并不是阻止事件冒泡,而是阻止多次并发点击。

解决方法

有多种方法可以防止并发点击运行代码

一种方法是在元素上取消绑定(“点击”),然后在准备就绪时再次绑定(.bind())。

我宁愿使用某种旗帜。它可以是一个变量,但是我宁愿为元素分配一个类,如.processing,并在完成后将其删除。所以你会让处理程序检查该类的存在来确定代码应该运行。

$('someElement').click(function() {
    var $th = $(this);
    if($th.hasClass('processing'))
          return;
    $th.addClass('processing');
    // normal code to run
    // then when done remove the class
    $th.removeClass('processing');
});

另一个选择是使用元素.data()设置一个类似的标志,如$(this).data(‘processing’,true);完成后将其设置为false。

原文链接:https://www.f2er.com/jquery/182766.html

猜你在找的jQuery相关文章