JavaScript-事件event对象上

一、事件的概念

什么是Event事件

浏览器与用户进行交互的时候会触发各种事件,事件在文档或者浏览器窗口中发生,指用户或浏览器自身执行的某种动作.是javascript与DOM之间的交互的桥梁。

二、事件流

事件流是描述从页面中接收事件的顺序
按照执行的顺序,我们主要有事件冒泡和事件捕获两种形式
DOM标准规定事件流包括三个阶段:事件捕获阶段、处于目标阶段和事件冒泡阶段

1、事件冒泡

事件冒泡可以形象比喻为把一颗石头投入水中,泡泡会一直从水底冒出水面,事件会从最内层的元素开始发生,一直向上传播,直到document对象,

事件开始时由最具体的元素开始发生,一直向上传播,逐级向上。

在这里插入图片描述

2、阻止事件冒泡

阻止事件冒泡用到了event对象的一个属性event.stopPropagation()

阻止事件冒泡:event.stopPropagation()

3、事件捕捉

与事件冒泡正好相反,从最外层逐级向内捕获事件。事件的捕获是从最不特定的事件目标到最特定的事件目标。即从DOM树的根到叶子。

三、DOM

1、DOM0级事件处理程序

分为2个:一是在标签内写onclick事件

二是在js代码中写 对象.onlicke=function(){}函数

1级DOM–(为什么没有1级DOM)

DOM级别1于1998年10月1日成为W3C推荐标准。1级DOM标准中并没有定义事件相关的内容,所以没有所谓的1级DOM事件模型。在2级DOM中除了定义了一些DOM相关的操作之外还定义了一个事件模型 ,这个标准下的事件模型就是我们所说的2级DOM事件模型

2、DOM2级事件处理程序

DOM2级事件绑定

DOM2级事件定义了两个方法,用于处理指定和删除事件处理程序的操作:

addEventListener()removeEventListener()

函数均有3个参数,
第一个参数是要处理的事件名(不带on前缀的才是事件名)
第二个参数是作为事件处理程序的函数
第三个参数是一个boolean值,默认false表示使用冒泡机制,true表示捕获机制。

使用DOM2级事件处理程序的主要好处是可以添加多个事件处理程序。事件处理程序会按照它们的顺序触发。

注意:

通过addEventListener()添加的事件处理程序只能使用removeEventListener()来移除,移除时传入的参数与添加时使用的参数相同。这也意味着通过addEventListener()添加的匿名函数将无法移除。

3、IE事件处理程序

IE8及以下版本浏览器实现了与DOM中类似的两个方法:attachEvent()和detachEvent()。

使用方法跟上面类似。

<

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

会撸串的傻狍子

感谢您的认可

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值