javascript事件冒泡
鼠标离开事件(onmouseout):
(1)鼠标通过粉色区域进入蓝色区域,会触发粉色区域的鼠标离开事件;
(2)鼠标通过蓝色区域进入粉色区域,会触发蓝色区域的鼠标离开事件,并触发粉色区域的鼠标离开事件;
(3)鼠标进入蓝色区域(不进入粉色区域),会触发蓝色区域的鼠标离开事件,并触发粉色区域的鼠标离开事件;
出现以上这些问题的原因就是 事件的冒泡
解决代码实例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>事件冒泡 event</title>
<style type="text/css">
div{
width:200px;
height:200px;
background-color: red;
}
p{
width:100px;
height:100px;
background-color: blue;
margin:20px;
}
</style>
<script type="text/javascript">
//event.srcElement
//event.formElement
window.onload = function(){
var divNode = document.getElementById("one");
var pNode = document.getElementById("two");
divNode.onclick = function(){
alert("div");
}
pNode.onclick = function(){
alert("p");
event.stopPropagation();
}
}
</script>
</head>
<body>
<div id="one">
<p id="two">123</p>
</div>
</body>
</html>