1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- import { EventHook } from './hook';
- import { Util } from './util';
- // Prevent triggered image.load events from bubbling to window.load
- export var Special;
- (function (Special) {
- EventHook.register('load', {
- noBubble: true,
- });
- })(Special || (Special = {}));
- // Support: Chrome <=73+
- // Chrome doesn't alert on `event.preventDefault()`
- // as the standard mandates.
- (function (Special) {
- EventHook.register('beforeunload', {
- postDispatch(elem, event) {
- if (event.result !== undefined && event.originalEvent) {
- event.originalEvent.returnValue = event.result;
- }
- },
- });
- })(Special || (Special = {}));
- // For mouseenter/leave call the handler if related is outside the target.
- // NB: No relatedTarget if the mouse left/entered the browser window
- (function (Special) {
- EventHook.register('mouseenter', {
- delegateType: 'mouseover',
- bindType: 'mouseover',
- handle(target, event) {
- let ret;
- const related = event.relatedTarget;
- const handleObj = event.handleObj;
- if (!related || (related !== target && !Util.contains(target, related))) {
- event.type = handleObj.originType;
- ret = handleObj.handler.call(target, event);
- event.type = 'mouseover';
- }
- return ret;
- },
- });
- EventHook.register('mouseleave', {
- delegateType: 'mouseout',
- bindType: 'mouseout',
- handle(target, event) {
- let ret;
- const related = event.relatedTarget;
- const handleObj = event.handleObj;
- if (!related || (related !== target && !Util.contains(target, related))) {
- event.type = handleObj.originType;
- ret = handleObj.handler.call(target, event);
- event.type = 'mouseout';
- }
- return ret;
- },
- });
- })(Special || (Special = {}));
- //# sourceMappingURL=special.js.map
|