UNPKG

element-gui

Version:

A Component Library for Vue.js.

37 lines (29 loc) 1.13 kB
'use strict'; exports.__esModule = true; var _normalizeWheel = require('normalize-wheel'); var _normalizeWheel2 = _interopRequireDefault(_normalizeWheel); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var isFirefox = typeof navigator !== 'undefined' && navigator.userAgent.toLowerCase().indexOf('firefox') > -1; var onMousewheel = function onMousewheel(element, callback) { if (element && element.addEventListener) { element.$mousewheelFn = function (event) { var normalized = (0, _normalizeWheel2.default)(event); callback && callback.apply(this, [event, normalized]); }; element.addEventListener(isFirefox ? 'DOMMouseScroll' : 'mousewheel', element.$mousewheelFn); } }; var offMousewheel = function offMousewheel(el) { if (el && el.removeEventListener) { el.removeEventListener(isFirefox ? 'DOMMouseScroll' : 'mousewheel', el.$mousewheelFn); el.$mousewheelFn = null; }; }; exports.default = { bind: function bind(el, binding) { onMousewheel(el, binding.value); }, unbind: function unbind(el) { offMousewheel(el); } };