/ Published in: JavaScript
Support: Fx2, Opera9, IE6 Remodeled "Event.observe" of prototype.js... is necessary for this. This is indispensable for MouseWheel to support.
Expand |
Embed | Plain Text
/*----------------------------------------------------------------------------- * Mouse Event * Example Source Event.Mouse.right(window, function (e) { alert(Event.pointerX(e) + ', ' + Event.pointerY(e)); }); Event.Mouse.wheel(window, function (e, roll) { alert(roll); }); * Event Observer Sample Event.observe = function (element, name, observer, useCapture) { useCapture = useCapture || false; // Start Remodel name = (name == 'keypress' && (navigator.appVersion.match(/Konqueror|Safari|KHTML/) || window.attachEvent)) ? 'keydown' : (name == 'mousewheel' && !window.attachEvent) ? 'DOMMouseScroll' : name; // End Remodel if (element.addEventListener) element.addEventListener(name, observer, useCapture); else if (element.attachEvent) element.attachEvent('on' + name, observer); } *-------------------------------------------------------------------------- */ var Mouse = { left: function (element, func) { Event.observe(element, 'click', func); }, doubleleft: function (element, func) { Event.observe(element, 'dblclick', func); }, right: function (element, func) { Event.observe(element, 'contextmenu', function (e) { func.apply(this, [e]); return false; }) }, wheel: function (element, func) { Event.observe(element, 'mousewheel', function (e) { func.apply(this, [e, (e.wheelDelta) ? e.wheelDelta / -120 : e.detail / 3]); Event.stop(e); }); } }
You need to login to post a comment.
