DOM·0级·2级~ 捕获阶段·目标阶段·冒泡阶段;

例题:wrapDiv>innerP>textSpan加上以下事件,*点击最里面的DIV(textSpan)*后的输出结果是:

在这里插入图片描述

//默认已获取元素

wrapDiv.onclick = function(){console.log("A")};
wrapDiv.onclick = function(){console.log("B")};
wrapDiv.addEventListener("click",function(){console.log("C")},fasle);
wrapDiv.addEventListener("click",function(){console.log("D")},fasle);
wrapDiv.addEventListener("click",function(){console.log("E")},ture);
wrapDiv.addEventListener("click",function(){console.log("F")},ture);

innerP.onclick = function(){console.log("G")};
innerP.onclick = function(){console.log("H")};
innerP.addEventListener("click",function(){console.log("I")},fasle);
innerP.addEventListener("click",function(){console.log("G")},fasle);
innerP.addEventListener("click",function(){console.log("K")},ture);
innerP.addEventListener("click",function(){console.log("L")},ture);

textSpan.onclick = function(){console.log("M")};
textSpan.onclick = function(){console.log("N")};
textSpan.addEventListener("click",function(){console.log("O")},fasle);
textSpan.addEventListener("click",function(){console.log("P")},fasle);
textSpan.addEventListener("click",function(){console.log("Q")},ture);
textSpan.addEventListener("click",function(){console.log("R")},ture);

背景知识:

1.事件的顺序是 : 捕获阶段>warpDiv>innerP>textSpan>目标阶段>textSpan>冒泡阶段>textSpan>innerP>warpDiv 的顺序
在这里插入图片描述
2.
DOM0级:
只能添加到冒泡阶段,早期的事件模型称为DOM0级别。 (DOM0事件模 型,所有的浏览器都支持。)直接在dom对象上注册事件名称,就是DOM0写法,比如:

wrapDiv.onclick = function(){console.log("A")};
wrapDiv.onclick = function(){console.log("B")};
·  DOM0级只能注册在冒泡阶段
·  一个元素注册同一种事件只能注册一个DOM0级(后者覆盖前者)

DOM2级:
DOM2支持同一dom元素注册多个同种事件。
DOM2新增了捕获和冒泡的概念。比如:

wrapDiv.addEventListener("click",function(){console.log("C")},fasle);
wrapDiv.addEventListener("click",function(){console.log("D")},fasle);
wrapDiv.addEventListener("click",function(){console.log("E")},ture);
wrapDiv.addEventListener("click",function(){console.log("F")},ture);
·  addEventListenter()传入三个参数,(事件类型,fn,Boolean)
·  最后一个参数ture表示添加到捕获阶段,false表示添加到冒泡阶段
·  DOM2级可以添加多个事件,先添加先执行。(IE的attachEvent为先添加的后执行)
目标阶段不区分捕获和冒泡;先写先执行

3.例题分析:自己分析

4.答案:
text.html:43 E
text.html:44 F
text.html:50 K
text.html:51 L
text.html:54 N
text.html:55 O
text.html:56 P
text.html:57 Q
text.html:58 R
text.html:47 H
text.html:48 I
text.html:49 G
text.html:40 B
text.html:41 C
text.html:42 D

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值