diff --git a/lib/proto/attach-link.js b/lib/proto/attach-link.js index d53e351..647558d 100644 --- a/lib/proto/attach-link.js +++ b/lib/proto/attach-link.js @@ -53,14 +53,26 @@ var linkAction = function(el, event) { this.loadUrl(el.href, clone(this.options)) } +var isDefaultPrevented = function(event) { + return event.defaultPrevented || event.returnValue === false; +} + module.exports = function(el) { var that = this on(el, "click", function(event) { + if (isDefaultPrevented(event)) { + return + } + linkAction.call(that, el, event) }) on(el, "keyup", function(event) { + if (isDefaultPrevented(event)) { + return + } + // Don’t break browser special behavior on links (like page in new window) if (event.which > 1 || event.metaKey || event.ctrlKey || event.shiftKey || event.altKey) { el.setAttribute(attrKey, "modifier")