Ticket #2069: 2069.diff
| File 2069.diff, 2.1 kB (added by davidserduke, 8 months ago) |
|---|
|
possible patch |
-
test/unit/event.js
-
src/event.js
62 62 type = parts[0]; 63 63 handler.type = parts[1]; 64 64 65 if ( type == "ready" && jQuery.isReady ) { 66 handler.call(elem, jQuery); 67 return; 68 } 65 69 // Get the current list of functions bound to this event 66 70 var handlers = events[type]; 67 71 … … 242 246 243 247 // Filter the functions by class 244 248 if ( !parts[1] || handler.type == parts[1] ) { 245 var ret = handler.apply( this, args ); 249 // Special case the "ready" type to remove the event and pass only the jQuery object 250 var ret = ( event.type == "ready" ) ? 251 handler.apply( this, Array.prototype.slice.call(args, 1) ) : 252 handler.apply( this, args ); 246 253 247 254 if ( val !== false ) 248 255 val = ret; … … 351 358 jQuery.event.add( window, "load", handler ); 352 359 }, 353 360 354 teardown: function() {return;}, 361 teardown: function() { 362 var handler = jQuery.event.special.ready.handler; 363 if ( document.removeEventListener ) 364 document.removeEventListener( "DOMContentLoaded", handler, false ); 365 jQuery.event.remove( window, "load", handler ); 366 }, 355 367 356 368 handler: function() { 357 369 // Make sure that the DOM is not already loaded 358 370 if ( !jQuery.isReady ) { 359 371 // Remember that the DOM is ready 360 372 jQuery.isReady = true; 361 jQuery(document).triggerHandler("ready" );373 jQuery(document).triggerHandler("ready", [ jQuery ]); 362 374 jQuery(document).unbind("ready"); 363 375 } 364 376 }