X-Git-Url: http://git.asbjorn.it/?a=blobdiff_plain;f=src%2Fevent.js;h=f7e0a08c05759b9ef93856faa8e7399dbd7b100c;hb=5c2d70979c15bbda5c90e1634abe11d8c350abcb;hp=daafe54aa54dc162ef4ee8387f5a9faf7550ffd4;hpb=6b08d88d04f4a41849753999e6e18126895086d0;p=jquery.git diff --git a/src/event.js b/src/event.js index daafe54..f7e0a08 100644 --- a/src/event.js +++ b/src/event.js @@ -23,11 +23,16 @@ jQuery.event = { return; } - // For whatever reason, IE has trouble passing the window object - // around, causing it to be cloned in the process - if ( jQuery.isWindow( elem ) && ( elem !== window && !elem.frameElement ) ) { - elem = window; + // TODO :: Use a try/catch until it's safe to pull this out (likely 1.6) + // Minor release fix for bug #8018 + try { + // For whatever reason, IE has trouble passing the window object + // around, causing it to be cloned in the process + if ( jQuery.isWindow( elem ) && ( elem !== window && !elem.frameElement ) ) { + elem = window; + } } + catch ( e ) {} if ( handler === false ) { handler = returnFalse; @@ -1094,7 +1099,7 @@ function liveHandler( event ) { for ( j = 0; j < live.length; j++ ) { handleObj = live[j]; - if ( close.selector === handleObj.selector && (!namespace || namespace.test( handleObj.namespace )) ) { + if ( close.selector === handleObj.selector && (!namespace || namespace.test( handleObj.namespace )) && !close.elem.disabled ) { elem = close.elem; related = null;