如果我有......
<div id="parent" onmouseover="doSomething()">
<div id="child" onmouseover="doSomethingElse()">
</div>
</div>
我怎样才能让它在我徘徊在孩子身上时不执行doSomething()?当我将鼠标悬停在孩子身上时,我只想要doSomethingElse()执行,而我只想在父母徘徊时执行doSomething()。
每当我将鼠标悬停在孩子上时,两个函数都会执行。有什么想法吗?
马特
答案 0 :(得分:1)
function doSomethingElse(e) {
// your function body
e.stopPropagation()
}
答案 1 :(得分:1)
将属性值更改为
onmouseover="doSomethingElse(event)"
并将doSomethingElse()
更改为
function doSomethingElse(e) {
e.stopPropagation && e.stopPropagation();
e.cancelBubble = true;
// ...
}
答案 2 :(得分:0)
我没有测试它,但应该有几种方法可以做到。
请检查事件冒泡:它在IE和Firefox中有所不同,但仍然: www.quirksmode.org/js/events_order.html