读书笔记-Event对象

饥人谷_李栋


1.EventTarget接口
2.事件的传播
3.事件代理
4.事件属性


1.EventTarget接口

1.addEventListener() 定义一个特定事件的监听函数

target.addEventListener(名称,监听函数,false冒泡/true捕获)

注,1.为了便于兼容 false最好不要省
2.removeEventListener() 用来移除addEventListener方法添加的监听函数
注意,必须和addEventLisenter方法 参数完全一致,并且在同一个元素节点上

target.removeEventListener(名称,监听函数,false/true)

3.dispatchEvent() 在当前节点触发指定事件返回boolean值

target.dispatchEvent(event)

2.事件的传播

1.捕获阶段(红):从window对象->目标节点
依次为:window、document、html、body、div
2.目标阶段(蓝):目标节点上触发
3.冒泡阶段(绿):从目标节点->window对象
依次为:div、body、html、document、window



3.事件的代理

子节点的监听函数 定义到 父节点

var ul = document.querySelector('ul');
ul.addEventListener('click', function(event) {
   if (event.target.tagName.toLowerCase() === 'li') {
    // XXX
}
});

4.事件的属性

1.bubbles:事件是否冒泡
2.eventPhase:返回事件所处节点(int)
依次为0:没发生1:捕获2:目标3:冒泡
3.cancelable:事件是否可以取消
4.defaultPrevented:是否调用过preventDefault
5.currentTarget:返回 事件 当前所在的 节点
6.target:返回 触发事件 的节点
7.type:返回字符串
8.detail:返回 表示 事件性息 的数值
9.timeStamp:返回毫秒时间戳(chuo)
10.isTrusted:事件是否可以信任
11.preventDefault:取消事件默认行为
12.stopPropagation():阻止再触发别的节点的监听函数
13.stopImmediatePropagation():阻止同一事件的其他监听函数被调用
注意,上文中,是否代表返回boolean值


具体内容参照阮一峰的JavaScirpt教程笔记
未完待续...

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 事件是一种异步编程的实现方式,本质上是程序各个组成部分之间的通信。DOM支持大量的事件,本节介绍DOM的事件编程。...
    周花花啊阅读 601评论 0 3
  • 以下文章为转载,对理解JavaScript中的事件处理机制很有帮助,浅显易懂,特分享于此。 什么是事件? 事件(E...
    jxyjxy阅读 3,074评论 1 10
  • 1.JQuery 基础 改变web开发人员创造搞交互性界面的方式。设计者无需花费时间纠缠JS复杂的高级特性。 1....
    LaBaby_阅读 1,202评论 0 1
  • js简介 Js是一种基于事件和对象驱动的解释性、松散性的语言。 一切皆对象 javascript 布兰登艾奇 ...
    塔库纳玛哈哈阅读 1,241评论 0 2
  • 最近遇到一个crash问题,是关于线程同步锁的,检查代码的时候发现方法已经使用synchronized同步了,为什...
    五月花凋谢阅读 766评论 3 6