1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.Special = void 0;
- const hook_1 = require("./hook");
- const util_1 = require("./util");
- // Prevent triggered image.load events from bubbling to window.load
- var Special;
- (function (Special) {
- hook_1.EventHook.register('load', {
- noBubble: true,
- });
- })(Special = exports.Special || (exports.Special = {}));
- // Support: Chrome <=73+
- // Chrome doesn't alert on `event.preventDefault()`
- // as the standard mandates.
- (function (Special) {
- hook_1.EventHook.register('beforeunload', {
- postDispatch(elem, event) {
- if (event.result !== undefined && event.originalEvent) {
- event.originalEvent.returnValue = event.result;
- }
- },
- });
- })(Special = exports.Special || (exports.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) {
- hook_1.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_1.Util.contains(target, related))) {
- event.type = handleObj.originType;
- ret = handleObj.handler.call(target, event);
- event.type = 'mouseover';
- }
- return ret;
- },
- });
- hook_1.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_1.Util.contains(target, related))) {
- event.type = handleObj.originType;
- ret = handleObj.handler.call(target, event);
- event.type = 'mouseout';
- }
- return ret;
- },
- });
- })(Special = exports.Special || (exports.Special = {}));
- //# sourceMappingURL=special.js.map
|