List all live events in jQuery

后端 未结 3 632
醉酒成梦
醉酒成梦 2021-02-15 15:52

How could I find in jQuery what events are bound with live for a particular element?

Say I have a function, randomFunction, that returns a random function f

3条回答
  •  生来不讨喜
    2021-02-15 16:31

    Alright, figured it out. For a click event, for $('#certain_element'), logging each binding's index to the console:

    var relevantHandlers = $.map($(document).data('events').live, function(value){
      if(value.origType == 'click' && value.selector == '#certain_element'){
        return value.handler;
      }
    }; //all handlers for #certain_element bound to click by live.
    $.each(relevantHandlers, function(){
      console.log("the index is: " + $.inArray(this, arrayOfFunctions));
    });
    

提交回复
热议问题