]> source.dussan.org Git - jquery.git/commitdiff
Fix #10375. Don't put `type` in jQuery.event.props
authorDave Methvin <dave.methvin@gmail.com>
Thu, 29 Sep 2011 14:34:40 +0000 (10:34 -0400)
committerDave Methvin <dave.methvin@gmail.com>
Thu, 29 Sep 2011 14:34:55 +0000 (10:34 -0400)
It's already set in jQuery.Event, and copying it can clobber values set by the caller, e.g., the UI widget factory.

src/event.js
test/unit/event.js

index 4b4093eda1d955a70be30aea5e2ae5d446109ec1..fba8f817a3dcfe4c034eba9a9f81c1d4022164e2 100644 (file)
@@ -467,7 +467,7 @@ jQuery.event = {
 
        // Includes some event props shared by KeyEvent and MouseEvent
        // *** attrChange attrName relatedNode srcElement  are not normalized, non-W3C, deprecated, will be removed in 1.8 ***
-       props: "attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp type view which".split(" "),
+       props: "attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),
 
        propHooks: {},
 
index e68d53a76c484b1cbb2f2869b4db1548d53a1551..632254353846d35caa8d13bf32e3107bf758536e 100644 (file)
@@ -1101,7 +1101,7 @@ test("trigger(eventObject, [data], [fn])", function() {
 
 test("jQuery.Event( type, props )", function() {
 
-       expect(4);
+       expect(5);
 
        var event = jQuery.Event( "keydown", { keyCode: 64 }),
                        handler = function( event ) {
@@ -1111,6 +1111,9 @@ test("jQuery.Event( type, props )", function() {
 
        // Supports jQuery.Event implementation
        equal( event.type, "keydown", "Verify type" );
+       
+       // ensure "type" in props won't clobber the one set by constructor
+       equal( jQuery.inArray("type", jQuery.event.props), -1, "'type' property not in props (#10375)" );
 
        ok( "keyCode" in event, "Special 'keyCode' property exists" );