首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JavaScript 学习-30.HTML DOM0级事件 DOM2级事件

# 前言 DOM0 级事件就是 html 元素添加onclick 属性,或者给元素添加onclick事件,但是同元素的同一事件只能绑定一个函数,否则后面的事件会覆盖前面的事件。...如果我们想一个元素绑定多次同一个时间,比如我想绑定2个onclick事件,2个都要生效,于是就有了DOM2 级事件,通过addEventListener绑定的事件。...DOM0 级事件 DOM0 级事件就是前面讲到的事件绑定有2种方式,在HTML 中 或在 Script 中绑定事件 在页面元素中onclick="" scrip 中给元素添加onclick属性 绑定事件...DOM2 级事件 如果我们想 2 个事件都生效,用到 DOM2 级事件,通过 addEventListener 绑定的事件。...('click', myFunc2); 同样的,也可以使用removeEventListener移除当前元素的某一事件行为的多个不同方法 事件冒泡事件捕获

1.1K10

关于DOM事件流、DOM0级事件与DOM2级事件

防止事件冒泡而带来不必要的错误困扰。 阻止方法是使用 stopPropagation(),举个例子: <!...不难看出,事件在到达具体元素后,停止了冒泡,但不影响父元素的事件捕获 五、DOM0级事件 DOM0级事件,就是直接通过 onclick 等方式实现相应的事件 1、标签内写 onclick 事件 <input...这说明 DOM0 级添加事件时,后面的事件会覆盖前面的事件,而 DOM2级则不会,多个事件都会执行; 另外,DOM0级事件具有很好的跨浏览器优势,会以最快的速度绑定,但由于绑定速度太快,可能页面还未完全加载出来...,以至于事件可能无法正常运行 六、DOM2级事件 1、DOM2级事件的方法 主流浏览器 DOM2 级事件是通过以下两个方法用于处理指定删除事件处理程序的操作: addEvenetListener removeEventListener...注意:只有 DOM2级事件包含以下三个阶段 事件捕获阶段 处于目标阶段 事件冒泡阶段

2K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    JavaScript事件探秘

    2、DOM0级事件处理程序 DOM0级别事件处理程序是一种比较传统的,是指把一个行数赋值给一个事件处理程序的属性,也是用的比较多的方式。 他的优点是:简单,而且具有夸浏览器的优势。...; } 如果要需要这个事件,可以这样写: [程序4] btn2.onclick = null; 以上就是DOM0级事件处理方法。...3、DOM2级事件处理程序 DOM2级事件定义了两个方法:用于处理指定删除事件处理程序的操作:addEventListener()removeEventListener()。...它们都接收三个参数:要处理的事件名、作为事件处理程序的函数一个布尔值。 他的有点与DOM0级一样,还可以添加多个事件处理程序。...IE 中 event 对象的全部信息方法 DOM 对象中都有,只不过实现方式不一样。不过,这种对应关系让实现两种事件模型之间的映射非常容易。

    88920

    JS魔法堂:元素克隆、剪切技术研究

    实际测试效果: 浏览器 复制子元素 标准属性(property) 标准特性(attribute) 自定义特性(customize attribute) 自定义属性(expando) DOM0事件处理函数...DOM2事件处理函数 parentNode parentElement的值 ownerDocument IE5.5~8 √ √ √ √ √(浅复制) Χ Χ null 不变 IE9+ √ √ √ √...事件处理函数 DOM2事件处理函数 parentNode parentElement的值 ownerDocument IE9+ √ √ √ √ Χ Χ Χ null 当前文档的document对象 Chrome...事件处理函数 DOM2事件处理函数 parentNode parentElement的值 ownerDocument IE9+ √ √ √ √ √ √ √ null 当前文档的document对象 Chrome...事件处理函数 DOM2事件处理函数 parentNode parentElement的值 ownerDocument IE9+ √ √ √ √ √ √ √ 充当 clipboard的div元素 当前文档的

    1.2K50

    「面试常问」系统理解浏览器之事件机制

    DOM 事件流 为了在浏览器中兼容这 2 种事件流,在 DOM2 Events 规范中将事件流分为 3 个阶段:事件捕获阶段、到底目标阶段、事件冒泡阶段。 ?...btn.onclick = function() { } // 移除事件 btn.onclick = null DOM2 事件处理程序 通过 addEventListener 可以添加 DOM2 级别的事件处理程序...('div') btn.addEventListener('click', () => { }, false) DOM0 事件处理程序的区别: addEventListener 可以改变事件流...,即可以在捕获阶段触发事件,而 DOM0 是不行的; addEventListener 可以为同一个元素多次添加同一类型的事件处理程序,先添加的事件处理程序会先触发,而 DOM0 如果给同一个元素绑定多个相同类型的事件处理程序的话...DOM0 一样,需要带上 on,比如 onclick; 在通过 attachEvent 添加的事件处理程序内部 this 会指向 window,而 DOM0 DOM2 的 this 会指向元素本身;

    55620

    JavaScript 中 的 DOM BOM

    从根本上将 BOM 只处理浏览器窗口框架,但是人们习惯把针对浏览器的 JavaScript 扩展也算作 BOM 的一部分,例如:浏览器弹出新窗口的功能;移动、缩放关闭浏览器窗口的功能;navigator...DOM2 在原有的 DOM 基础上又扩充了鼠标用户界面事件、范围、遍历(迭代 DOM 文档的方法)等细分模块,并且通过对象接口增加了对 CSS 的支持。...DOM2 级引入的模块有: - DOM 视图(DOM Views):定义了追踪不同文档的视图接口。 - DOM 事件(DOM Events):定义了事件事件处理的接口。...- DOM 遍历范围(DOM Traversal and Range):定义了遍历操作文档树的接口。...DOM0 级,DOM0 级标准本质上不存在,所谓 DOM0 只是 DOM 历史坐标中的一个参照点,具体来说,DOM0 级是指 Internet Explorer 4.0 Netscape Navigator

    46720

    js高程之事件通识篇(一)

    但有意思的是,早期的两个开发团队分别是ieNetscape却提出了完全相反的事件流概念。也就是下面要介绍的两种。...dom0级处理函数 将一个函数赋值给一个事件处理属性,这种方式跨浏览器,写法简单,兼容性好,但是它需要一个对元素的引用,所以如果这个事件如果定义在元素的前面,那么事件就不会绑定上。...let btn = document.getElementById('btn'); btn.onclick = function(){ console.log(this) } dom2级事件 dom2...级事件定义了两个方法,用于处理指定程序删除事件处理程序的操作。...ie事件处理程序 attachEvent与detatchEvent 分别可以用来为ie增加移除事件监听程序。与dom0级不同的是,其是为全局添加的,也就是事件里的this为window。

    49830

    再谈BOMDOM(4):DOM0DOM2事件处理分析

    为什么没有DOM0及DOM1 事件 我们的确定标准了是没有DOM0级的。所谓DOM0级只是DOM历史坐标中的一个参照点而已。...具体说来,DOM0级指的是Internet Explorer 4.0Netscape Navigator 4.0最初支持的DHTML。...实际上,DOM0级标准是不存在的,所谓的DOM0级是DOM历史坐标中的一个参照点而已,具体说呢,DOM0级指的是IE4Netscape 4.0这些浏览器最初支持的DHTML..大概2000年的时候争论过...级 事件处理程序 DOM2开始推崇三层分离: DOM视图(DOM Views):定义了跟踪不同文档(例如,应用CSS之前之后的文档)视图的接口; DOM事件(DOM Events):定义了事件事件处理的接口...参考文章: JavaScript 运行机制详解:再谈Event Loop www.ruanyifeng.com/blog/2014/10/event-loop.html JS-------DOM0级事件处理DOM2

    83310

    【JS】395-重温基础:事件

    1.3 DOM事件流 “DOM2级事件”规定的事件流包含三个阶段:事件捕获阶段,处于目标阶段事件冒泡阶段。 事件捕获为截获事件提供机会,然后实际的目标接收到事件,最后事件冒泡,对事件作出响应。...我们将事件处理程序,分为这么几类: HTML事件处理程序 DOM0级事件处理程序 DOM2级事件处理程序 IE事件处理程序 跨浏览器事件处理程序 2.1 HTML事件处理程序 某个元素支持的事件,都可以用一个与相应事件处理程序同名的...IE的attachEvent()DOM0级方法区别: 两者事件处理程序的作用域不同。 DOM0级方法,作用域在所属元素的作用域。...级方法、DOM2级方法或IE方法即可,默认采用DOM0级方法。...3.1 DOM中的事件对象 无论指定事件处理程序时使用什么方法(DOM0级方法或DOM2级方法),都会传入 event对象: var leo = document.getElementById('leo

    1K60

    JavaScript事件详解

    JavaScript事件模型 JavaScript事件模型,也就是事件机制,分为两类DOM0级事件模型DOM2级事件模型。...DOM0级事件模型 DOM0级事件模型是早期的事件模型,比如说一个onclick事件 缺点: 无法绑定多个相同的事件,注册多个同类型的函数的话,就会发生覆盖,之前注册的函数就会无效 document.getElementById...var event=event||window.event; var target=event.target||event.srcElement alert(target); } DOM2...级事件模型 在DOM2级中使用addEventListenerremoveEventListener来注册和解除事件(IE8及之前版本不支持,IE7、IE8用 attachEvent)。...事件流又称为事件传播,DOM2级事件规定的事件流包括三个阶段:事件捕获阶段(capture phase)、处于目标阶段(target phase)事件冒泡阶段(bubbling phase) 首先发生的是事件捕获

    71310

    深入理解浏览器事件模型的概念原理

    浏览器事件模型定义了事件的流程机制,包括事件的类型、事件的触发传递、事件的处理响应等。二、浏览器事件模型的类型在浏览器中,事件分为三种类型:DOM0级事件、DOM2级事件IE事件模型。1....DOM0级事件DOM0级事件是最早的事件模型,它是通过在元素上添加事件处理函数来实现的。...DOM0级事件模型的缺点是只能为一个元素添加一个事件处理函数,且不能对事件进行捕获阻止冒泡。2....DOM2级事件DOM2级事件是目前主流的事件模型,它是通过addEventListener()方法来实现的。...DOM2级事件模型的优点是可以为一个元素添加多个事件处理函数,且可以对事件进行捕获阻止冒泡。3. IE事件模型IE事件模型是IE浏览器独有的事件模型,它是通过attachEvent()方法来实现的。

    65453

    JavaScript的事件

    而现在的浏览器要使用DOM2级模型的事件绑定机制才能手动定义事件流模式。 3. DOM事件流 “DOM2级事件”规定了事件流包括三个阶段:事件捕获阶段,处理目标阶段事件冒泡阶段。...DOM0级事件处理程序 通过javascript制定事件处理程序的传统方式,将一个函数赋值给一个事件处理程序属性。特点是简单,跨浏览器。...DOM2级事件处理程序 DOM2级规范以一种符合逻辑的方式来标准化DOM事件,IE9,Firefox,Opera,Safari,Chrome全部已经实现了"DOM2级事件"模块的核心部分。...clientX,clientY 事件发生时,鼠标指针在视口中的水平和垂直坐标 2.页面坐标位置 pageX,pageY 事件发生时,鼠标指针在页面本身而非视口的坐标,页面没有滚动的时候,pageXpageY...的值与clientXclientY值相等 3.屏幕位置 screenX,screenY 4.修改键 值为boolean类型,用来判断对应的按键是否被按下 shiftKey ctrlKey

    1.5K30
    领券