From b06dd433b2d77e902c3f643cf791d2a10f63cea6 Mon Sep 17 00:00:00 2001 From: Brandon Aaron Date: Sun, 31 Dec 2006 22:03:34 +0000 Subject: [PATCH] Fix for #504 --- src/event/event.js | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/src/event/event.js b/src/event/event.js index 02f3f8198..569a4d0ab 100644 --- a/src/event/event.js +++ b/src/event/event.js @@ -134,12 +134,22 @@ jQuery.event = { event.pageY = event.clientY + (e.scrollTop || b.scrollTop); } - // Check safari and if target is a textnode - if ( jQuery.browser.safari && event.target.nodeType == 3 ) { - // target is readonly, clone the event object - event = jQuery.extend({}, event); + // check if target is a textnode (safari) + if (event.target.nodeType == 3) { + // store a copy of the original event object and clone because target is read only + var originalEvent = event; + event = jQuery.extend({}, originalEvent); + // get parentnode from textnode - event.target = event.target.parentNode; + event.target = originalEvent.target.parentNode; + + // add preventDefault and stopPropagation since they will not work on the clone + event.preventDefault = function() { + return originalEvent.preventDefault(); + }; + event.stopPropagation = function() { + return originalEvent.stopPropagation(); + }; } // fix preventDefault and stopPropagation -- 2.39.5