javascript - 停止在 href 上传播点击事件

标签 javascript dom-events href

如何停止传播点击事件,使浏览器不重定向?

<a id="theHref" href="http://stackoverflow.com/">SO</a>
<script>
    document.getElementById("theHref").addEventListener("mousedown", function(event) {
        console.log("href clicked, lets try to stop event propagation");
        event.stopPropagation();
        event.preventDefault();
        return false;
    });
</script>

最佳答案

首先,你想监听“click”事件,而不是 mousedown

document.getElementById("theHref").addEventListener("click", function(event) {
    console.log("href clicked, lets try to stop event propagation");
    event.preventDefault();
    return false;
});

不确定你是否需要 return false - 我永远不记得像那样的跨浏览器细微差别 :p return false 不会停止 Firefox,例如

关于javascript - 停止在 href 上传播点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31098166/

相关文章:

javascript - 导航到页面后运行 javascript

javascript - 使用 JavaScript 检测点击进入 Iframe

javascript - 如何使用默认 id 检查路径名

html - SEO:hreflang 无法正常工作 - 我该如何解决?

html - IE8 - 单击链接内的 div 时没有任何反应

javascript - js中的函数提升

javascript - 如何返回所有列名/标题(并避免 "TypeError: table.columns(...).names is not a function")?

javascript - 使用 knockout.js 在 select 上使用值绑定(bind)更新整个对象?

javascript - NetSuite - 如何获得子公司偏好

javascript - 在 Pell Editor 中粘贴 html 内容并使用 Striptags nodejs 包进行格式化