59 lines
2.2 KiB
JavaScript
59 lines
2.2 KiB
JavaScript
"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
|