]> source.dussan.org Git - jquery.git/commitdiff
jquery event: caching the props array and fixing the loop that goes thru it. It was...
authorAriel Flesler <aflesler@gmail.com>
Wed, 28 May 2008 20:43:13 +0000 (20:43 +0000)
committerAriel Flesler <aflesler@gmail.com>
Wed, 28 May 2008 20:43:13 +0000 (20:43 +0000)
src/event.js

index 2bdf9ab23e2986d790307827f1e279511dc5bbf7..bcfd0452cc9bc70e39cde679b9021f2d2c56d2c4 100644 (file)
@@ -274,6 +274,8 @@ jQuery.event = {
                return val;
        },
 
+       props: "altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target timeStamp toElement type view wheelDelta which".split(" "),
+
        fix: function(event) {
                if ( event[expando] == true )
                        return event;
@@ -282,9 +284,11 @@ jQuery.event = {
                // and "clone" to set read-only properties
                var originalEvent = event;
                event = { originalEvent: originalEvent };
-               var props = "altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target timeStamp toElement type view wheelDelta which".split(" ");
-               for ( var i=props.length; i; i-- )
-                       event[ props[i] ] = originalEvent[ props[i] ];
+
+               for ( var i = this.props.length, prop; i; ){
+                       prop = this.props[ --i ];
+                       event[ prop ] = originalEvent[ prop ];
+               }
 
                // Mark it as fixed
                event[expando] = true;