我试图找到问题的答案,但没有成功 - 如果答案非常明显,我深表歉意:)。这是我试图解决的问题的前提。
有没有办法让我以某种方式找出用于特定 UI 元素的事件处理程序,然后通过 .on() 方法为同一处理程序附加新的侦听器?
你的困境有点开放式。
阅读本文:关于 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。