如何使用jquery学习事件是否绑定到元素?

Ser*_*gel 7 jquery events

我需要一个hasEvents()像这样的方法

var someBool = hasEvents($("#myelement"));
Run Code Online (Sandbox Code Playgroud)

true如果对任何元素的事件处理程序有一些绑定事件,则返回.

Owe*_*wen 9

你看过这个hasEvent()插件了吗?代码非常小:

(function(A) {
    A.fn.hasEvent = function(C) {
       var B = this.data("events");
       return( B && B[C] )
    }
}) (jQuery)
Run Code Online (Sandbox Code Playgroud)

为了您的具体目的,您可以稍微修改它:

(function($) {
    $.fn.hasEvents = function() {
        return new Boolean(this.data('events') );
    }
}) (jQuery);

$('#someDiv').click(function() {
    alert('new event');
});

$('#someDiv').hasEvents();      // true
$('#someOtherDiv').hasEvents(); // false
Run Code Online (Sandbox Code Playgroud)