UNPKG

zarm-web

Version:
43 lines (40 loc) 1.04 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _default = { on: function on(el, type, callback) { if (el.addEventListener) { el.addEventListener(type, callback, { passive: false }); } else { el.attachEvent("on ".concat(type), function () { callback.call(el); }); } }, off: function off(el, type, callback) { if (el.removeEventListener) { el.removeEventListener(type, callback, { passive: false }); } else { el.detachEvent("off ".concat(type), callback); } }, once: function once(el, type, callback) { var typeArray = type.split(' '); var recursiveFunction = function recursiveFunction(e) { e.target.removeEventListener(e.type, recursiveFunction, { passive: false }); return callback(e); }; for (var i = typeArray.length - 1; i >= 0; i -= 1) { this.on(el, typeArray[i], recursiveFunction); } } }; exports.default = _default;