1、DOM中的事件级别

  DOM0: element.onclick = function(){}

  DOM1: 没有与事件相关的设计

  DOM2: element.addEventListener('click',function(){},false/true);冒泡/捕获,默认冒泡

  DOM3:element.addEventListener('keyup',function(){},false/true);多事件类型

2、DOM事件模型:捕获 冒泡

3、事件流

  阶段一:捕获阶段

  阶段二:目标阶段

  阶段三:冒泡阶段

4、描述DOM事件具体流程

捕获:window document HTML body div  ... 目标元素

冒泡:相反

 // 捕获 过程,冒泡把true改成false
var ev = document.getElementById('ev');
window.addEventListener('click', function() {
console.log("window capture");
}, true);
document.addEventListener('click', function() {
console.log("document capture");
}, true);
document.documentElement.addEventListener('click', function() {
console.log("html capture");
}, true);
document.body.addEventListener('click', function() {
console.log("body capture");
}, true);
ev.addEventListener('click', function() {
console.log("ev capture");
}, true);

注意:获取html标签是:document.documentElement

5、event对象的常见应用

 event.preventDefault();//阻止默认事件
event.stopPropagation();//阻止事件冒泡
event.stopImmediatePropagation();//事件响应优先级
event.currentTarget();//当前所绑定的事件的对象
event.target();//事件委托,判断哪个被绑定

6、自定义事件

 // 自定义事件
var eve = new Event('test');
ev.addEventListener('test', function() {
console.log("test dispatch");
});
setTimeout(function() {
ev.dispatchEvent(eve);
}, 2000)

DOM事件类的更多相关文章

  1. DOM 事件类

    DOM事件的级别: DOM级别一共可以分4个级别:DOM0级.DOM1级. DOM2级 .DOM3级.而DOM事件级别分为3个级别:DOM0级事件处理.DOM2级事件处理.DOM3级事件处理 1. D ...

  2. jQuery操作dom事件

    参考:jQuery权威指南jQuery初步jQuery选择器jQuery操作domjQuery操作dom事件jQuery插件jQuery操作AjaxjQuery动画与特效jQuery实现导航栏jQue ...

  3. DOM 事件深入浅出(二)

    在DOM事件深入浅出(一)中,我主要给大家讲解了不同DOM级别下的事件处理程序,同时介绍了事件冒泡和捕获的触发原理和方法.本文将继续介绍DOM事件中的知识点,主要侧重于DOM事件中Event对象的属性 ...

  4. DOM 事件深入浅出(一)

    在项目开发时,我们时常需要考虑用户在使用产品时产生的各种各样的交互事件,比如鼠标点击事件.敲击键盘事件等.这样的事件行为都是前端DOM事件的组成部分,不同的DOM事件会有不同的触发条件和触发效果.本文 ...

  5. DOM事件

    在慕课网上学习了DOM事件探秘课程,特此整理了一下笔记. 慕课网DOM事件探秘课程地址:http://www.imooc.com/learn/138 事件 是文档或浏览器窗口中发生的特定的交互瞬间.[ ...

  6. 理解DOM事件流的三个阶段

    本文主要解决两个问题: 1.什么是事件流 2.DOM事件流的三个阶段 事件流之事件冒泡与事件捕获 在浏览器发展的过程中,开发团队遇到了一个问题.那就是页面中的哪一部分拥有特定的事件? 可以想象画在一张 ...

  7. 你真的了解DOM事件么?

    你真的了解DOM事件么? 我们大家都知道,人与人之间的交流可以通过语言,文字,肢体动作,面部微表情等,但是你知道Javascript和HTML之间是通过什么进行交互的么?你又知道Javascript和 ...

  8. [DOM Event Learning] Section 4 事件分发和DOM事件流

    [DOM Event Learning] Section 4 事件分发和DOM事件流 事件分发机制: event dispatch mechanism. 事件流(event flow)描述了事件对象在 ...

  9. dom事件与event对象总结

    1 事件:就是文档或浏览器窗口中发生的一些特定的交互瞬间.    tips:js和xhtml的交互是通过当用户或浏览器操作网页时发生的事件来处理的. 1.1 事件流:即事件的顺序.        事件 ...

随机推荐

  1. 获取Xcode工程所有的类名

    有的时候在需求中需要获取工程中所有的类名.例如在获取工程中继承某个类的列表. 核心代码如下: unsigned ; const char **classes = nil; Dl_info info; ...

  2. EtherCAT主站对PHY有要求?

    /********************************************************************** * EtherCAT主站对PHY有要求? * 说明: * ...

  3. vsCode打开多个终端

    可以在vsCode里面启动两个终端 ,点击+号就可以添加一个终端. 避免项目启动的多了需要开好几个编辑器,造成代码混淆.

  4. 30天代码day0

    a class is a collection of variables (fields) and functions called methods. A program is a collectio ...

  5. vue axios 取消上次请求

    axios.defaults.timeout = 1000 * 5axios.defaults.baseURL = baseUrlvar CancelToken = axios.CancelToken ...

  6. Python中的常用魔术方法介绍

    1.__init__ 初始化魔术方法 触发时机:初始化对象时触发(不是实例化触发,但是和实例化在一个操作中) 参数:至少有一个self,接收对象 返回值:无 作用:初始化对象的成员 注意:使用该方式初 ...

  7. Python练习九

    1.处理文件,用户指定要查找的文件和内容,将文件中包含要查找内容的每一行都输出到屏幕. def check_file(filename, content): with open(filename, e ...

  8. Assembly Experiment9

    用英文写太浪费时间了,而且书上的讲解对各种功能的英文原句少之又少,有空还是看龙书吧(不存在的) 实验1: 十六进制转换十进制 实验代码: ; 在屏幕上输出内存单元中的十进制两位数 assume cs: ...

  9. C语言题库----指针

    1.如果f是一个函数,请说明 f() 和f的意思. f是函数的地址,f()是函数 2.怎样理解数组的下标运算? 先偏移,后取址. 3.int *p,*q; int a[]={10,20,30,40}; ...

  10. 嵌入式C语言常见的错误

    预处理的错误: #include “stdio.h”   //引用符号错误 #inlcude <name>  //自定义文件用 "  " not find gcc -I ...