基础知识3--DOM事件

DOM事件类
1.基本概念(DOM事件的级别)
2.DOM事件模型(捕获、冒泡)
3.DOM事件流
4.DOM事件捕获的具体流程
5.Event对象的常见应用
6.自定义事件

基本概念---DOM事件的级别
  • DOM0
    el.onclick = function(){//code...};
  • DOM2
    el.addEventListener('click',function(){//code...},false);
  • DOM3
    el.addEventListener('keyup',function(){//code...},false);
DOM事件模型(捕获、冒泡)

捕获------>目标阶段-------->冒泡

DOM事件流

事件通过捕获到达目标阶段然后上传到window对象

DOM事件捕获的具体流程

window接收---->document---->html----->html-----body-----目标元素
var btn = document.getElementById('btn');
window.addEventListener('click',function(){ console.log('window'); },true)//捕获阶段
document.addEventListener('click',function(){ console.log('document'); },true)
document.dcoumentElement.addEventListener('click',function(){ console.log('html'); },true)
document.body.addEventListener('click',function(){ console.log('body'); },true)
btn.addEventListener('click',function(){ console.log('btn'); },true)

Event对象的常见应用
  • event对象是事件响应中最重要的对象
  • event.preventDefault() 阻止默认事件
  • event.stopPropagation() 阻止冒泡
  • event.stopImmediatePropagation() 绑定两函数AB都会执行,如果用这个,A执行完会组织B。事件响应优先级
  • event.currentTarget 当前绑定的事件对象
  • event.target 事件委托,事件代理,把自己子元素绑定到它们的父元素上判断被点击哪个元素,target表示当前被点击的元素
  • srcElement IE中的target
自定义事件

var ev = document.getElementById('test');//获取元素
var eve = new Event('custome');//创建自定义事件,只能指定事件名
ev.addEventListener('custome',function(){//code...})//为元素添加自定义事件
ev.dispatchEvent(eve);//触发自定义事件
new customEvent()可指定事件名和object参数

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

推荐阅读更多精彩内容

  • 事件绑定的方式 给 DOM 元素绑定事件分为两大类:在 html 中直接绑定 和 在 JavaScript 中绑定...
    Bruce_zhuan阅读 1,069评论 0 6
  • dom对象的innerText和innerHTML有什么区别? innerHTML指的是从对象的起始位置到终止位置...
    coolheadedY阅读 514评论 0 0
  • 知识点整理来源于网上。详细的介绍推荐直接看API文档。 DOM 功能 对元素的增查删改① 查询某个元素② 查询某个...
    纸简书生阅读 478评论 0 0
  • DOM0级和DOM2级在事件监听使用方式上有什么区别? DOM0级事件监听:用JavaScript指定事件处理程序...
    LeeoZz阅读 395评论 0 1
  • DOM DOM内容主要分为四部分: 什么是DOM和节点; 获取节点; 节点操作(3种); 属性操作(3种)。 什么...
    magic_pill阅读 819评论 0 1