简单的事件冒泡及其操作

事件模型(捕获、冒泡)

w3c定义事件的发生经历三个阶段:捕获阶段、目标阶段、冒泡阶段

冒泡:子元素先触发,父元素后触发

捕获:父元素先触发,子元素后触发

阻止冒泡:stoppropagetion()  ie:cancelbubble=true

阻止捕获(阻止默认行为):preventdefault()  ie:window.event.returnvalue=false

<div id="div1">

div1

<div id="div2">

div2

</div>

</div>

<a href="http:wwww.baidu.com" id="btn">baidu</a>
<script>

var odiv1=document.getElementById("div1");

var odiv2=document.getElementById("div2");

var obtn=document.getElementById("btn")

odiv1.onclick=function(e){

console.log("div1 click");

}

odiv2.onclick=function(e){

console.log("div2 click");

e.stopPropagation();//阻止冒泡

//

e.cancelBubble=true;

}

obtn.onclick=function(e){

console.log("sadfasfas");



//阻止默认行为

//return flase;所有浏览器都支持

e.preventDefault();//阻止跳转

//ie下面

// e.returnValue=false

}

上一篇:vue项目 IE浏览器打开报错::strict 模式下不允许一个属性有多个定义


下一篇:[javascript] ie下不支持incudes属性和方法