0

我有一个 div 列表,其中包含与之关联的 onclick 操作。每个 div 内部都有一个正常的链接。当我单击链接时,将执行 javascript(速度很快),然后与链接关联的新页面开始加载(几分之一秒后)。

我可以对链接做些什么以使其不执行 javascript - 尽管它位于脚本中定义的 div 内?有没有办法将它从关联中排除,或者告诉它停止所有 javascript onclick?

谢谢!

4

4 回答 4

4

您可以停止div元素内链接的事件传播,如下所示

$('div a').on('click', function(evt) {
   evt.stopPropagation()
   /* do something */ 
});

这样做,当您单击链接时,与元素click事件关联的处理程序div将不会被执行。

于 2012-06-20T07:55:27.193 回答
2

试试这个 ,

   $("#yourlinkId").click(function(event) {
     event.preventDefault();
     });
于 2012-06-20T07:56:23.360 回答
0

让链接的 onclick 处理程序返回 false,例如:

<a href="http://foo/bar" onclick="return false">

或者,在 jQuery 表示法中:

$('div a').on('click', function(e) { return false; });
于 2012-06-20T07:58:06.147 回答
0

或者您可以通过以下方式阻止默认操作

$('div a').on('click', function(event) {
   event.preventDefault();
});

我认为停止传播会阻止由单击链接引起的任何进一步事件,而阻止默认值只会停止实际的链接单击?

于 2012-06-20T07:58:31.560 回答