手机版

js研究总结的dom2事件基础知识详解

时间:2021-09-04 来源:互联网 编辑:宝哥软件园 浏览:

事实上,我们使用的DOM2事件绑定是让box通过原型链在内置类EventTarget的原型上找到addEventListener方法。

DOM0级事件绑定:只能将一个方法绑定到一个元素的某个行为一次,第二次绑定会覆盖前一次。

DOM2:您可以将多个不同的方法绑定到一个元素的相同行为

box.addEventListener('click ',function(e){ console.log(1) },false)box . addeventlistener(' click ',function(e){ console.log(2) },True)//输出1中的行为类型2DOM2:DOM0,可以绑定为DOM2,DOM2还提供了一些DOM0没有的行为类型-DOMContentLoaded:当页面中的DOM结构(HTML结构)被加载时触发。

盒子。addevent listener(' DOM content loaded ',函数(e) {},false)窗口。onload=function(){ }//只有加载完页面中的所有资源(图片、HTML结构、音频和视频)后,才会执行后一个函数.);而且一页只能用一次,以后写会覆盖上一页;-因为它被DOM0事件$(文档)绑定。ready(function(){ })///-$(function(){ })/*只要加载了页面中的HTML结构就会执行相应的函数;并且可以在同一页上出现多次。因此,这是一个使用DOM2事件的绑定,绑定行为是在DOMContentLoaded */DOM2级别添加和删除事件细节

函数fn1(e){ console . log(this);}//添加事件框。addeventlistener ('click ',fn1,false);//移除事件框. removeeventlistener ('click ',fn1,false);注意,移除:时,需要保证:行为的三个参数,方法和发生的阶段必须一致——当-DOM2被绑定时,我们通常用实名函数绑定他

只有多个“不同”的方法可以绑定到一个元素的相同行为(如果方法相同,则只能剩下一个)

当行为被触发时,绑定的方法将按照绑定的顺序执行;执行这个的是当前绑定事件的元素本身

函数fn1(){ console . log(1);}//添加事件框。addeventlistener ('click ',fn1,false);box.addEventListener('click ',fn1,false);//只输出一个事件池(用来存储绑定当前元素行为的方法,浏览器自己的机制),涉及到一个概念:如下图所示

但是,在IE6-8浏览器中,不支持addEventListener。如果要实现DOM2事件绑定,只能使用attachEvent/disconnectevent

它只有两个参数,不能像addEventListener那样在哪个阶段控制。默认情况下只能在冒泡阶段发生,行为需要添加(特别类似于DOM0)

Box.attachEvent('onclick ',fn1)注意:与标准浏览器的事件池机制相比,

1.顺序问题:在执行时比较混乱,标准浏览器按照绑定顺序依次执行

2.重复问题:ie6-8可以将多个相同的方法绑定到同一个元素的相同行为

3.这个问题在:ie6-8中,当方法被执行时,这个在方法中不是当前的元素框而是窗口

以上就是本文的全部内容。希望对大家的学习有帮助,支持我们。

版权声明:js研究总结的dom2事件基础知识详解是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。