多个OnClick JQuery事件正在激发
Multiple OnClick JQuery events firing
我有一个带有div的页面,上面有一个按钮。我在这两个页面上都添加了onClick事件。现在,当我单击div上的按钮时,div的onClick也在执行。有什么办法可以避免这种情况吗?
谢谢你,
试试这个,将事件作为参数传递给onclick事件并调用
event.stopPropagation();
event.preventDefault();
您的onclick事件分配应该是:
$(button).click(function(event) {
// script here
event.stopPropagation();
event.preventDefault();
});
在您的点击处理程序中,您可能希望使用"stopPropagation",例如:
$("button").click(function(e) {
// handle this event
// ...
// don't pass this event up to parent handlers
e.stopPropagation();
} );
还有一个相关的功能,你可能想读一读,叫做"preventDefault",它告诉浏览器不要做它通常自动做的事情(例如,当点击提交按钮时提交页面)
另请参阅:https://developer.mozilla.org/en/DOM/event.stopPropagationhttp://api.jquery.com/event.stopPropagation/什么';s添加';return false';点击事件监听器?http://fuelyourcoding.com/jquery-events-stop-misusing-return-false/
在link元素的侦听器中,您可以放置e.stopPropagation()
,它应该会修复它(如果您使用事件冒泡)。
如果您没有使用jQuery,请确保将addEventListener()
的useCapture
参数设置为False
info-MDN;您希望确保知道事件在DOM中的移动方向(希望它们冒泡)。
您需要防止按钮onClick事件冒泡到div。因此,基本上在按钮的onClick函数结束时,一旦完成所有逻辑,您需要调用event.stopPropagation()
如果以上都不起作用,请尝试:
$("button").click(function(e) {
e.stopImmediatePropagation();
});
- 如何在执行此特定onclick事件时执行JavaScript函数
- 如何调用“;链接_;在onclick事件上使用Javascript
- 如何使用jquery迭代具有相同属性的html元素并查找onclick事件
- 选择onclick事件jquery
- 如何刷新列表框内容onclick或blur事件
- 执行php函数的onclick事件的其他替代方案
- 动态创建OnClick事件Javascript
- onClick事件未触发reactjs
- 使用java脚本更改onClick事件中菜单选项卡的颜色
- 如何使用OnClick事件通过参数调用来调用PHP函数
- 第二个事件[onClick]不起作用
- 复选框事件onclick不起作用
- 如何在jQuery中为通知添加事件onClick
- JS函数不响应事件onclick
- 使用事件onclick访问if语句Javascript中变量的值
- 如何在事件onclick中抓取文本
- 如何绑定id < light >与事件Onclick
- 未找到JS事件OnClick
- 如何在js/prototype中触发具有特定顺序的事件(onclick)
- 无法触发javascript事件OnClick的复选框