有人可以帮我解决onclick事件中的气泡效应吗?
我明白了:
<script language="javascript">
function1(){
alert('test');
}
function2(){
alert('test');
}
</script>
<div onclick="function1()">
<span onclick="function2()">test</span>
blablablabla
</div>
现在当我点击跨度时,我不希望功能1启动,而只是功能2.如何做到这一点?我是否必须编辑该函数,或者为此添加更多全局java?
答案 0 :(得分:3)
将function2
的附件更改为:
<span onclick="function2(event)">
然后,在函数中:
function function2(e) {
if (e.stopPropagation) {
e.stopPropagation();
}
else {
e.cancelBubble = true;
}
}
我们在那里做什么:
onclick
传递它。stopPropagation
(DOM标准)或cancelBubble
(特定于IE)通过使用像jQuery,YUI,Closure或any of several others这样不错的JavaScript / DOM库,可以简化很多这样的工作。这些平滑的浏览器差异等等。