0.1.1 • Published 12 years ago
stay-or-go v0.1.1
stay-or-go
Determine if an anchor click was intended for staying on the current site.
Example
The function this module exposes should be used in a click handler:
var stayOrGo = require('stay-or-go');
window.addEventListener('click', function (evt) {
var a = stayOrGo(evt);
if (!a) return;
evt.preventDefault();
history.pushState(a.pathname, '', a.pathname);
}, false);If one or more of the following is true the return value will be undefined:
- The default action of the event was already prevented
(
event.preventDefault()). - The user did not click the normal mouse button (when using a mouse).
- The user held one of the
Ctrl,Shift, orMetakeys when clicking. - The user did not click an anchor or a child elemnt of an anchor.
- The anchor clicked has a
targetattribute. - The
hrefof the anchor is pointing to an external site.
Otherwise the return value is the anchor element clicked.
License
MIT


