2
<div onclick="AutogeneratedMethod()">
<span>SPAN 1 : I require auto method </span>
<span onclick="DesiredMethod()">SPAN 2 : I do not require auto method</span>
</div>

在上面的代码示例中,如何防止AutogeneratedMethod()在用户单击时调用SPAN 2div我对声明及其各自的onclick行为没有任何控制权。该行是从我正在使用的框架自动生成的。

我正在寻找可以在DesiredMethod(). 像这样的东西:

function DesiredMethod() {
//Do necessary stuff
exit; //Abort any further Javascript
}
4

2 回答 2

3

您想停止事件传播。IE 有cancelBubble

于 2012-06-05T17:39:53.937 回答
0

你也可以像这样移动一些东西:

<div>
   <span onclick="AutogeneratedMethod()">SPAN 1 : I require auto method </span>
   <span onclick="DesiredMethod()">SPAN 2 : I do not require auto method</span>
</div>

然后你就不需要担心事件传播和冒泡了。

您可能还想考虑通过不同的机制使用框架(jQuery 等)或纯 JavaScript 附加您的 JavaScript 事件。由于许多原因,人们不赞成通过 HTML 属性执行此操作。查看此链接了解更多详情。

于 2012-06-05T17:52:52.900 回答