Commit 485fa0c4 authored by jaubourg's avatar jaubourg

Makes sure options.context is used as the context for global ajax events only if it's a DOM node.

parent 389c099d
...@@ -334,13 +334,17 @@ jQuery.extend({ ...@@ -334,13 +334,17 @@ jQuery.extend({
var // Create the final options object var // Create the final options object
s = jQuery.extend( true, {}, jQuery.ajaxSettings, options ), s = jQuery.extend( true, {}, jQuery.ajaxSettings, options ),
// Callbacks contexts // Callbacks context
// We force the original context if it exists // We force the original context if it exists
// or take it from jQuery.ajaxSettings otherwise // or take it from jQuery.ajaxSettings otherwise
// (plain objects used as context get extended) // (plain objects used as context get extended)
callbackContext = callbackContext =
( s.context = ( "context" in options ? options : jQuery.ajaxSettings ).context ) || s, ( s.context = ( "context" in options ? options : jQuery.ajaxSettings ).context ) || s,
globalEventContext = callbackContext === s ? jQuery.event : jQuery( callbackContext ), // Context for global events
// It's the callbackContext if one was provided in the options
// and if it's a DOM node
globalEventContext = callbackContext !== s && callbackContext.nodeType ?
jQuery( callbackContext ) : jQuery.event,
// Deferreds // Deferreds
deferred = jQuery.Deferred(), deferred = jQuery.Deferred(),
completeDeferred = jQuery._Deferred(), completeDeferred = jQuery._Deferred(),
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment