aboutsummaryrefslogtreecommitdiffstats
path: root/src/event.js
diff options
context:
space:
mode:
authorjeresig <jeresig@gmail.com>2009-12-16 16:45:00 -0500
committerjeresig <jeresig@gmail.com>2009-12-16 16:45:00 -0500
commit9997620420ec0baf7dba8ce9dee0f19e616e1bc4 (patch)
tree096f295adc293dd60b502c0c700594275c4b5915 /src/event.js
parentfe9333cc792eecf98189f8fd18daf64b64dff049 (diff)
downloadjquery-9997620420ec0baf7dba8ce9dee0f19e616e1bc4.tar.gz
jquery-9997620420ec0baf7dba8ce9dee0f19e616e1bc4.zip
Retooled the arguments.callee-related changes in 98ce35d52b17a033822f31d8a36232222d0d365e to avoid re-declarations where possible.
Diffstat (limited to 'src/event.js')
-rw-r--r--src/event.js11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/event.js b/src/event.js
index 283d1e0bf..b50a1ec4e 100644
--- a/src/event.js
+++ b/src/event.js
@@ -37,13 +37,20 @@ jQuery.event = {
// Init the element's event structure
var events = jQuery.data( elem, "events" ) || jQuery.data( elem, "events", {} ),
- handle = jQuery.data( elem, "handle" ) || jQuery.data( elem, "handle", function eventHandle() {
+ handle = jQuery.data( elem, "handle" ), eventHandle;
+
+ if ( !handle ) {
+ eventHandle = function() {
// Handle the second event of a trigger and when
// an event is called after a page has unloaded
return typeof jQuery !== "undefined" && !jQuery.event.triggered ?
jQuery.event.handle.apply( eventHandle.elem, arguments ) :
undefined;
- });
+ };
+
+ handle = jQuery.data( elem, "handle", eventHandle );
+ }
+
// Add elem as a property of the handle function
// This is to prevent a memory leak with non-native
// event in IE.