From 3a9c827bf86657a0d007f66c9920d4c2b1726961 Mon Sep 17 00:00:00 2001 From: Brandon Aaron Date: Wed, 6 May 2009 01:24:22 +0000 Subject: [PATCH] fix for #3286 --- src/event.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/event.js b/src/event.js index ebdcc59dba..8d737bf4bb 100644 --- a/src/event.js +++ b/src/event.js @@ -388,14 +388,14 @@ jQuery.event = { setup: bindReady, teardown: function() {} }, - + live: { add: function( proxy, data, namespaces ) { jQuery.extend( proxy, data || {} ); proxy.guid += data.selector + data.live; jQuery.event.add( this, data.live, liveHandler ); }, - + teardown: function( namespaces ) { jQuery.event.remove( this, namespaces[0], liveHandler ); } @@ -479,8 +479,11 @@ var withinElement = function( event ) { var parent = event.relatedTarget; // Traverse up the tree while ( parent && parent != this ) { + // Firefox sometimes assigns relatedTarget a XUL element + // which we cannot access the parentNode property of try { parent = parent.parentNode; } - catch(e) { parent = this; } + // assuming we've left the element since we most likely mousedover a xul element + catch(e) { break; } } if ( parent != this ) {