jquery event: removed the argument dohandlers from $.trigger. Uses another approach.
This commit is contained in:
parent
7138cf0ce0
commit
0a846e5be6
1 changed files with 13 additions and 16 deletions
29
src/event.js
29
src/event.js
|
@ -163,7 +163,7 @@ jQuery.event = {
|
|||
}
|
||||
},
|
||||
|
||||
trigger: function( e, data, elem, donative, extra, dohandlers) {
|
||||
trigger: function( e, data, elem, donative, extra) {
|
||||
// Event object or event type
|
||||
var type = e.type || e;
|
||||
|
||||
|
@ -207,16 +207,14 @@ jQuery.event = {
|
|||
|
||||
var val, ret, fn = jQuery.isFunction( elem[ type ] );
|
||||
|
||||
if ( dohandlers !== false ) {
|
||||
// Trigger the event, it is assumed that "handle" is a function
|
||||
var handle = jQuery.data(elem, "handle");
|
||||
if ( handle )
|
||||
val = handle.apply( elem, data );
|
||||
// Trigger the event, it is assumed that "handle" is a function
|
||||
var handle = jQuery.data(elem, "handle");
|
||||
if ( handle )
|
||||
val = handle.apply( elem, data );
|
||||
|
||||
// Handle triggering native .onfoo handlers (and on links since we don't call .click() for links)
|
||||
if ( (!fn || (jQuery.nodeName(elem, 'a') && type == "click")) && elem["on"+type] && elem["on"+type].apply( elem, data ) === false )
|
||||
val = false;
|
||||
}
|
||||
// Handle triggering native .onfoo handlers (and on links since we don't call .click() for links)
|
||||
if ( (!fn || (jQuery.nodeName(elem, 'a') && type == "click")) && elem["on"+type] && elem["on"+type].apply( elem, data ) === false )
|
||||
val = false;
|
||||
|
||||
if ( donative !== false && val !== false ) {
|
||||
var parent = elem.parentNode || elem.ownerDocument;
|
||||
|
@ -551,15 +549,14 @@ jQuery.fn.extend({
|
|||
});
|
||||
|
||||
function liveHandler( event ){
|
||||
var check = RegExp("(^|\\.)" + event.type + "(\\.|$)"), stop = true;
|
||||
var check = RegExp("(^|\\.)" + event.type + "(\\.|$)"),
|
||||
stop = true;
|
||||
|
||||
jQuery.each(jQuery.data(this, "events").live || [], function(i, fn){
|
||||
if ( check.test(fn.type) ) {
|
||||
var elem = jQuery(event.target).closest(fn.data)[0];
|
||||
if ( elem ) {
|
||||
var ret = jQuery.event.trigger( event.type, [event, fn.data], elem, false, fn, false );
|
||||
if ( ret === false )
|
||||
stop = false;
|
||||
}
|
||||
if ( elem && fn.call(elem, event, fn.data) === false )
|
||||
stop = false;
|
||||
}
|
||||
});
|
||||
return stop;
|
||||
|
|
Loading…
Reference in a new issue