File: event/js/mousewheel.js
- /**
- * Adds mousewheel event support
- * @module event
- * @submodule event-mousewheel
- */
- var DOM_MOUSE_SCROLL = 'DOMMouseScroll',
- fixArgs = function(args) {
- var a = Y.Array(args, 0, true), target;
- if (Y.UA.gecko) {
- a[0] = DOM_MOUSE_SCROLL;
- target = Y.config.win;
- } else {
- target = Y.config.doc;
- }
- if (a.length < 3) {
- a[2] = target;
- } else {
- a.splice(2, 0, target);
- }
- return a;
- };
- /**
- * Mousewheel event. This listener is automatically attached to the
- * correct target, so one should not be supplied. Mouse wheel
- * direction and velocity is stored in the 'wheelDelta' field.
- * @event mousewheel
- * @param type {string} 'mousewheel'
- * @param fn {function} the callback to execute
- * @param context optional context object
- * @param args 0..n additional arguments to provide to the listener.
- * @return {EventHandle} the detach handle
- * @for YUI
- */
- Y.Env.evt.plugins.mousewheel = {
- on: function() {
- return Y.Event._attach(fixArgs(arguments));
- },
- detach: function() {
- return Y.Event.detach.apply(Y.Event, fixArgs(arguments));
- }
- };
-