Fix #10375. Don't put type in jQuery.event.props

It's already set in jQuery.Event, and copying it can clobber values set by the caller, e.g., the UI widget factory.
This commit is contained in:
Dave Methvin
2011-09-29 10:34:40 -04:00
parent 22fcc7744d
commit 96a44a86d8
2 changed files with 5 additions and 2 deletions

View 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: {},

View 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" );