我有一个div列表,其中包含与之关联的onclick操作。每个div里面都有一个普通的链接。当我点击链接时,执行javascript(这很快),然后与链接相关的新页面开始加载(稍后一小段时间)。
我可以对链接做什么,使其不执行javascript - 尽管它位于脚本中定义的div内?有没有办法将它从关联中排除,或者告诉它停止所有的javascript onclick?
谢谢!
答案 0 :(得分:4)
您可以停止div
元素内链接的事件传播,如此
$('div a').on('click', function(evt) {
evt.stopPropagation()
/* do something */
});
这样做,当您点击链接时,与click
元素的div
事件相关联的处理程序将不会被执行。
答案 1 :(得分:2)
试试这个,
$("#yourlinkId").click(function(event) {
event.preventDefault();
});
答案 2 :(得分:0)
让链接的onclick处理程序返回false,例如像这样:
<a href="http://foo/bar" onclick="return false">
或者,在jQuery表示法中:
$('div a').on('click', function(e) { return false; });
答案 3 :(得分:0)
或者您可以通过
阻止默认操作$('div a').on('click', function(event) {
event.preventDefault();
});
我认为停止传播可以防止因点击链接导致的任何其他事件,因为防止默认只会停止实际的链接点击?