JavaScriptday13:事件下

目录:

  • 事件绑定方式
  • 事件执行机制
  • 函数补充

事件绑定方式:

  • DOM0级、DOM2级
  1. DOM0级:事件属性,事件赋值式
  • 事件属性:把事件写在标签的属性里面
  • <input type="button" οnclick="alertMessage()" value="按钮"/>

  • 事件赋值式:

 2.DOM2级:监听方式:addEventListener、attachEvent

  • 1.addEventListener

 2.attachEvent

 注意:两者都是dom2级监听绑定方式区别是前者IE7、8之前的版本使用,后者以下使用

  • 三种赋值方式的区别:属性绑定事件区别于后两者后两者样式和行为分离,后两者的区别前者只能绑定同类型的事件一次,因为第二次事件会覆盖前者,而最后一种方式不会覆盖会依次执行

事件解绑:

  • 属性赋值式解绑: 变量名.函数名()=‘ ’
  • 监听事件解绑:btn3.removeEventListener('click',事件处理函数名)

事件的执行机制 

1.事件的传播:嵌套的元素,当触发内层元素的事件时,外层的有相同事件的元素也会被触发

  • 事件目标target:是你点击在哪个元素身上了,那么这个事件的目标就是什么
  • 获取事件目标:var target=e.target

2.事件传播方向:冒泡,捕捉

  • 冒泡:就是从事件 目标 的事件处理函数开始,依次向外,直到 window 的事件处理函数触发
    也就是从下向上的执行事件处理函数
  • 捕捉:就是从 window 的事件处理函数开始,依次向内,只要事件 目标 的事件处理函数执行
    也就是从上向下的执行事件处理函数

 注意:1.addEventListener的第三个参数决定了是事件捕获还是事件冒泡false为冒泡,true为捕捉

2.事件的处理过程主要有三个阶段:捕获阶段,目标阶段,冒泡阶段; 

3.事件传播的阻止方法:

在W3C中,使用stopPropagation()方法。

在IE下使用cancelBubble = true方法。

  • 事件委托:
  1.  

    本来由元素自身实现的行为委托给上级元素实现

    2.应用场景

    循环遍历给多个元素绑定事件时考虑事件委托简化事件操作

    冒泡实现

    焦点事件不支事件委托

函数补充:

  • 函数定义方式:
  1. 声明式
  2. 赋值式
  3. 自调用函数:(function(形参){代码})(实参)

 

4. arguments:在函数内部自带的变量,
表示所有实参的集合,
是伪数组

  • unction fn(){

    console.log(arguments)
 }

   fn(10)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值