Fix for #1061
[jquery.git] / src / event / event.js
index 9b5feb1..0acdf6b 100644 (file)
@@ -32,8 +32,11 @@ jQuery.event = {
                }
 
                // Make sure that the function being executed has a unique ID
-               if ( !handler.guid )
+               if ( !handler.guid ) {
                        handler.guid = this.guid++;
+                       // Don't forget to set guid for the original handler function
+                       if (fn) fn.guid = handler.guid;
+               }
 
                // Init the element's event structure
                if (!element.$events)
@@ -548,6 +551,9 @@ jQuery.extend({
                        // Remove event lisenter to avoid memory leak
                        if ( jQuery.browser.mozilla || jQuery.browser.opera )
                                document.removeEventListener( "DOMContentLoaded", jQuery.ready, false );
+                       
+                       // Remove script element used by IE hack
+                       jQuery(window).load(function(){ jQuery("#__ie_init").remove(); });
                }
        }
 });
@@ -925,7 +931,6 @@ new function(){
                if ( script ) 
                        script.onreadystatechange = function() {
                                if ( this.readyState != "complete" ) return;
-                               this.parentNode.removeChild( this );
                                jQuery.ready();
                        };