JQuery 检查事件绑定(bind)

标签 jquery events binding

我需要检查某些事件是否已绑定(bind)到元素上。

例如

$(".animate").click(function(){
    alert('Here comes action');
}); 

$(".someOtherSelector").click(function(){
    alert('some other action');
});

HTML

<a class="animate"></a>
<a class="someOtherSelector animate"></a>

在第二个函数中,我需要检查此元素上是否已绑定(bind)事件。如果是这样,则不应执行 alert('some other action');

我使用的是 jQuery 版本 1.10.1。

最佳答案

jQuery 1.8开始,事件数据不再适用于数据。阅读此jQuery blog post 。您现在应该使用这个:

jQuery._data(element, "events")

代码

$('.someOtherSelector').each(function(){
    console.log($._data(this, "events"));
});

Fiddle

关于JQuery 检查事件绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19181398/

相关文章:

php - 选择不同的经度和纬度值并找到它们的中值

javascript - 如何向动态创建的 DOM 对象添加文本?

jquery - span 按钮顶部的 click() 不起作用

.net - .NET 中由于事件处理程序导致内存泄漏的示例?

php - Symfony 事件订阅者对调度没有反应

javascript - 步骤在 noUISlider 中不起作用

wpf - 绑定(bind)到应用样式/模板的控件

c - 从 C 库头自动生成 Fortran 2003 绑定(bind)(使用 iso_c_bindings 内部模块)

c# - 取决于 viewmodel 定义的按钮数量的对话框窗口

python - SQLAlchemy 事件接口(interface)