Javascript jQuery-追加/替换事件侦听器(当事件处理程序未知时)

Javascript jQuery-追加/替换事件侦听器(当事件处理程序未知时),javascript,jquery,events,event-handling,Javascript,Jquery,Events,Event Handling,我试图找到我的问题的答案,但没有成功-如果答案非常明显,我道歉:。这是我试图解决的问题的前提 我有很多UI元素、按钮、超链接等,它们都附加了本机事件,例如,单击链接执行一个函数 我没有访问这些事件侦听器的权限,也不知道需要调用哪些函数/处理程序 我想做一个通用函数,它将: o横向通过DOM,找到诸如按钮或超链接之类的UI元素,并将其他监听器附加到其中,这些监听器将执行相同的处理程序/函数,例如,我想附加“touchend”监听器,这些监听器将执行与“click”事件相同的处理程序/函数 有没有办

我试图找到我的问题的答案,但没有成功-如果答案非常明显,我道歉:。这是我试图解决的问题的前提

我有很多UI元素、按钮、超链接等,它们都附加了本机事件,例如,单击链接执行一个函数 我没有访问这些事件侦听器的权限,也不知道需要调用哪些函数/处理程序 我想做一个通用函数,它将: o横向通过DOM,找到诸如按钮或超链接之类的UI元素,并将其他监听器附加到其中,这些监听器将执行相同的处理程序/函数,例如,我想附加“touchend”监听器,这些监听器将执行与“click”事件相同的处理程序/函数
有没有办法让我找出某个特定UI元素使用了哪些事件处理程序,然后通过.on方法为同一个处理程序附加新的侦听器?

Hiya即使您的困境有点悬而未决,希望这能帮助您:

阅读本文-关于JQuery,您可能不知道的事情=

您可以通过jQuery的事件存储访问绑定到元素或任何对象的所有事件处理程序:

// List bound events:
console.dir( jQuery('#elem').data('events') );

// Log ALL handlers for ALL events:
jQuery.each($('#elem').data('events'), function(i, event){
    jQuery.each(event, function(i, handler){
        console.log( handler.toString() );
    });
});

// You can see the actual functions which will occur
// on certain events; great for debugging!

附言-我建议您更好地了解您的DOM,但以上内容会有所帮助。B-

你好,尽管你的困境有点无止境,希望这能帮助你的事业:

阅读本文-关于JQuery,您可能不知道的事情=

您可以通过jQuery的事件存储访问绑定到元素或任何对象的所有事件处理程序:

// List bound events:
console.dir( jQuery('#elem').data('events') );

// Log ALL handlers for ALL events:
jQuery.each($('#elem').data('events'), function(i, event){
    jQuery.each(event, function(i, handler){
        console.log( handler.toString() );
    });
});

// You can see the actual functions which will occur
// on certain events; great for debugging!

附言-我建议您更好地了解您的DOM,但以上内容会有所帮助。B-

谢谢,这似乎正是我想要的-我将尝试在今天或明天实施此解决方案,并让您知道…@IvanS没问题!很高兴它帮助了您:对于现在找到这个的任何人,从jQuery v1.8开始,$element.dataevents。感谢mil,这似乎正是我想要的-我将尝试在今天或明天实现这个解决方案,并让您知道…@IvanS没问题!很高兴它帮助了您:对于现在找到它的任何人,从jqueryv1.8开始,$element.dataevents。