С jQuery можно связать функции с событием, включил использование Объекта DOM .bind()
или одна из функций помощника обработчика событий.
jQuery должен сохранить это внутренне так или иначе, и интересно, ли это возможный, учитывая Объект DOM, для обнаружения, какие события были связаны с объектом и получают доступ к тем функциям и т.д. Желаемый результат возврата мог выглядеть примерно так:
{
click: [function1, function2],
change: [function3],
blur: [function4, function5, function6]
}
Изменить : метод ниже работает только в jQuery <1.7
Вы можете найти много интересных советов и приемов в этой статье: То, что вы можете не знать о jQuery .
Похоже, что 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['handler'].toString() );
});
});
// You can see the actual functions which will occur
// on certain events; great for debugging!