javascript - 使用 mousedown 停止单击事件仅在触发警报时有效

标签 javascript jquery onclick mousedown

我试图通过从容器上的 mousedown 事件返回 false 来阻止运行元素的子元素定义的 onclick 事件,如下所示:

submit_container.mousedown(function(event){
    return false;
});

如果我这样编写代码,它就不起作用。但是,如果我先添加警报,点击事件实际上会停止:

submit_container.mousedown(function(event){
    alert('Alert');
    return false;
});

here 提到了同样的问题,但遗憾的是没有一个答案解决这个问题。

编辑:JSfiddle example 。我想要第二个链接的行为,但不必触发警报

最佳答案

mousedown 适用于容器类。您的问题是 a href 附加了单击事件而不是鼠标按下。因此,您应该在容器或 href 上使用 onclick ,因为事件传播将发生并向上冒泡到父级。您仍然可以阻止这种情况发生。

示例。

submit_container.click(function(event){
    event.stopPropagation();
    event.preventDefault();
    return false;
});

希望这有帮助

关于javascript - 使用 mousedown 停止单击事件仅在触发警报时有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37349125/

相关文章:

javascript - 调用并结束ajax函数

javascript - NODE_TLS_REJECT_UNAUTHORIZED Heroku 应用程序使整个应用程序不安全

javascript - 在其他 div 位置插入 div

javascript - 如何在不使用 margin 属性的情况下将内容居中放置在 div 中

javascript - 将上下文变量作为参数传递给 onclick 事件处理程序

javascript - 从 HTML --> JavaScript --> CSS --> 迁移?

javascript - 在 Angular JS 中如果条件匹配则添加类

javascript - 照片查看器中异步加载图像的潜在错误(Javascript 和 jQuery)

javascript - Chrome 扩展程序 : How to add a button to a page on a web site and add a click handler to it?

javascript - 当您使用 Javascript 单击或停止悬停时,如何使 CSS 悬停内容保持原样?