Если вы хотите скопировать все события из одного объекта в другой без клонирования, вы можете сделать это, обратившись непосредственно к данным событий.
Например, если вы сделали:
$("#the_link").click(function(e){
// do some stuff
return false;
}.mouseover(function(e){
// do some other stuff
});
Вы можете получить доступ к этим ассоциированным событиям в данных 'events' элемента
var events = $("#the_link").data('events');
Это будет объект, ключи которого представляют тип события, каждый из которых содержит массив ассоциаций событий. Несмотря на это, вот простой пример, не учитывающий пространства имен.
var events = $("#the_link").data('events');
var $other_link = $("#other_link");
if ( events ) {
for ( var eventType in events ) {
for ( var idx in events[eventType] ) {
// this will essentially do $other_link.click( fn ) for each bound event
$other_link[ eventType ]( events[eventType][idx].handler );
}
}
}