File tree Expand file tree Collapse file tree 1 file changed +13
-1
lines changed Expand file tree Collapse file tree 1 file changed +13
-1
lines changed Original file line number Diff line number Diff line change @@ -392,7 +392,19 @@ Object.keys(eventMap).forEach(key => {
392
392
Object . assign ( node , targetProperties )
393
393
const window = getWindowFromNode ( node )
394
394
const EventConstructor = window [ EventType ] || window . Event
395
- return new EventConstructor ( eventName , eventInit )
395
+ /* istanbul ignore else */
396
+ if ( typeof EventConstructor === 'function' ) {
397
+ return new EventConstructor ( eventName , eventInit )
398
+ } else {
399
+ // IE11 polyfill from https://developer.mozilla.org/en-US/docs/Web/API/CustomEvent/CustomEvent#Polyfill
400
+ const event = window . document . createEvent ( EventType )
401
+ const { bubbles, cancelable, detail, ...otherInit } = eventInit
402
+ event . initEvent ( eventName , bubbles , cancelable , detail )
403
+ Object . keys ( otherInit ) . forEach ( eventKey => {
404
+ event [ eventKey ] = otherInit [ eventKey ]
405
+ } )
406
+ return event
407
+ }
396
408
}
397
409
398
410
fireEvent [ key ] = ( node , init ) => fireEvent ( node , createEvent [ key ] ( node , init ) )
You can’t perform that action at this time.
0 commit comments