Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.
 
 
 
 

1 wiersz
1.6 KiB

  1. {"ast":null,"code":"var eventListenerOptions;\nvar eventMap = new WeakMap();\n\nfunction getOptions() {\n if (eventListenerOptions !== undefined) {\n return eventListenerOptions;\n }\n\n var supportPassiveEvent = false;\n\n try {\n var noop = function noop() {};\n\n var options = Object.defineProperty({}, 'passive', {\n get: function get() {\n supportPassiveEvent = true;\n }\n });\n window.addEventListener('testPassive', noop, options);\n window.removeEventListener('testPassive', noop, options);\n } catch (e) {}\n\n eventListenerOptions = supportPassiveEvent ? {\n passive: false\n } : false;\n return eventListenerOptions;\n}\n\nexport function eventScope(scrollbar) {\n var configs = eventMap.get(scrollbar) || [];\n eventMap.set(scrollbar, configs);\n return function addEvent(elem, events, fn) {\n function handler(event) {\n // ignore default prevented events\n if (event.defaultPrevented) {\n return;\n }\n\n fn(event);\n }\n\n events.split(/\\s+/g).forEach(function (eventName) {\n configs.push({\n elem: elem,\n eventName: eventName,\n handler: handler\n });\n elem.addEventListener(eventName, handler, getOptions());\n });\n };\n}\nexport function clearEventsOn(scrollbar) {\n var configs = eventMap.get(scrollbar);\n\n if (!configs) {\n return;\n }\n\n configs.forEach(function (_a) {\n var elem = _a.elem,\n eventName = _a.eventName,\n handler = _a.handler;\n elem.removeEventListener(eventName, handler, getOptions());\n });\n eventMap.delete(scrollbar);\n}","map":null,"metadata":{},"sourceType":"module"}