我有一个 div 列表,其中包含与之关联的 onclick 操作。每个 div 内部都有一个正常的链接。当我单击链接时,将执行 javascript(速度很快),然后与链接关联的新页面开始加载(几分之一秒后)。
我可以对链接做些什么以使其不执行 javascript - 尽管它位于脚本中定义的 div 内?有没有办法将它从关联中排除,或者告诉它停止所有 javascript onclick?
谢谢!
我有一个 div 列表,其中包含与之关联的 onclick 操作。每个 div 内部都有一个正常的链接。当我单击链接时,将执行 javascript(速度很快),然后与链接关联的新页面开始加载(几分之一秒后)。
我可以对链接做些什么以使其不执行 javascript - 尽管它位于脚本中定义的 div 内?有没有办法将它从关联中排除,或者告诉它停止所有 javascript onclick?
谢谢!
您可以停止div
元素内链接的事件传播,如下所示
$('div a').on('click', function(evt) {
evt.stopPropagation()
/* do something */
});
这样做,当您单击链接时,与元素click
事件关联的处理程序div
将不会被执行。
试试这个 ,
$("#yourlinkId").click(function(event) {
event.preventDefault();
});
让链接的 onclick 处理程序返回 false,例如:
<a href="http://foo/bar" onclick="return false">
或者,在 jQuery 表示法中:
$('div a').on('click', function(e) { return false; });
或者您可以通过以下方式阻止默认操作
$('div a').on('click', function(event) {
event.preventDefault();
});
我认为停止传播会阻止由单击链接引起的任何进一步事件,而阻止默认值只会停止实际的链接单击?