diff options
-rw-r--r-- | src/event.js | 2 | ||||
-rw-r--r-- | test/unit/event.js | 19 |
2 files changed, 20 insertions, 1 deletions
diff --git a/src/event.js b/src/event.js index b3a149891..1798df954 100644 --- a/src/event.js +++ b/src/event.js @@ -12,7 +12,7 @@ define([ var rformElems = /^(?:input|select|textarea)$/i, rkeyEvent = /^key/, - rmouseEvent = /^(?:mouse|pointer|contextmenu)|click/, + rmouseEvent = /^(?:mouse|pointer|contextmenu|drag)|click/, rfocusMorph = /^(?:focusinfocus|focusoutblur)$/, rtypenamespace = /^([^.]*)(?:\.(.+)|)/; diff --git a/test/unit/event.js b/test/unit/event.js index c772ef44c..8992a0b95 100644 --- a/test/unit/event.js +++ b/test/unit/event.js @@ -2477,6 +2477,25 @@ test("fixHooks extensions", function() { jQuery.event.fixHooks.click = saved; }); +// IE8 doesn't support custom event triggering natively, but we can skip +// this test in IE8 since a native HTML5 drag event will never occur there. +if ( document.createEvent ) { + + test( "drag events copy over mouse related event properties (gh-1925)", function() { + expect( 2 ); + + var $fixture = jQuery( "<div id='drag-fixture'></div>" ).appendTo( "body" ); + + $fixture.on( "dragmove", function( evt ) { + ok( "pageX" in evt, "checking for pageX property" ); + ok( "pageY" in evt, "checking for pageY property" ); + }); + + fireNative( $fixture[ 0 ], "dragmove" ); + $fixture.unbind( "dragmove" ).remove(); + }); +} + test( "focusin using non-element targets", function() { expect( 2 ); |