Package Exports
- mouse-event
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (mouse-event) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
mouse-event
Provides a normalized, cross-browser, garbage-collection-free API for reading out the state of a mouse event.
Why is this needed?
Because it is 2015 and somehow every major browser still disagrees on even the most basic details of MouseEvents. Seriously guys.
Example
var mouse = require('mouse-event')
window.addEventListener('mousemove', function(ev) {
document.body.innerHTML =
'<p>Buttons: ' + mouse.buttons(ev) +
' x:' + mouse.x(ev) +
' y:' + mouse.y(ev) + '</p>'
})
Install
npm i mouse-event
API
var mouse = require('mouse-event')
mouse.buttons(event)
Returns a bit vector, similar to event.which
in WebKit encoding the state of the mouse buttons.
event
is a mouse event
Returns A bit vector with the following interpretation for the flags:
1
- left mouse2
- right mouse4
- middle mouse8
- button 416
- button 5- ...
1<<k
- button k+1
mouse.x(event)
Returns the relative x-coordinate of the mouse event
event
is a mouse event
Returns The relative x-coordinate of event
, similar to event.x
in WebKit
mouse.y(event)
Returns the relative y-coordinate of the mouse event
event
is a mouse event
Returns The relative y-coordinate of event
, similar to event.y
in WebKit
mouse.element(event)
Get the element which triggered the event.
event
is a mouse event
Returns The target
or srcElement
or whatever it was that triggered the event
License
(c) 2015 Mikola Lysenko. MIT License