Switched jQuery() to represent jQuery([]) instead of jQuery(document).
[jquery.git] / src / event.js
index e070cb2..f766896 100644 (file)
@@ -253,8 +253,10 @@ jQuery.event = {
 
                var nativeFn, nativeHandler;
                try {
-                       nativeFn = elem[ type ];
-                       nativeHandler = elem[ "on" + type ];
+                       if ( !(elem && elem.nodeName && jQuery.noData[elem.nodeName.toLowerCase()]) ) {
+                               nativeFn = elem[ type ];
+                               nativeHandler = elem[ "on" + type ];
+                       }
                // prevent IE from throwing an error for some elements with some event types, see #3533
                } catch (e) {}
 
@@ -894,7 +896,10 @@ jQuery( window ).bind( 'unload', function() {
        for ( var id in jQuery.cache ) {
                // Skip the window
                if ( id != 1 && jQuery.cache[ id ].handle ) {
-                       jQuery.event.remove( jQuery.cache[ id ].handle.elem );
+                       // Try/Catch is to handle iframes being unloaded, see #4280
+                       try {
+                               jQuery.event.remove( jQuery.cache[ id ].handle.elem );
+                       } catch(e) {}
                }
        }
 });