JS中dom0级事件和dom2级事件的区别介绍

yizhihongxing

JS中事件分为DOM0级事件和DOM2级事件。

DOM0 级事件:是将一个函数赋值给一个事件处理程序属性,如下所示:

document.getElementById("button").onclick = function(){
   alert("Hello World!");
}

DOM2级事件:定义了两个方法 用于指定和删除事件处理程序的操作:addEventListener() 和 removeEventListener()。通过先调用 addEventListener() 方法然后在以后调用 removeEventListener()方法,来添加和删除事件处理程序,如下所示:

document.getElementById("button").addEventListener("click", function(){
   alert("Hello World!");
});

DOM2级事件除了可以在冒泡阶段处理事件之外,还可以指定事件处理程序的执行顺序、针对同一个元素绑定多个事件、移除事件处理程序等。

下面举两个示例说明:

  1. 示例一
//DOM0级事件
var btn1 = document.getElementById("button1");
btn1.onclick = function(){
    console.log("DOM0级事件");
}

//DOM2级事件
var btn2 = document.getElementById("button2");
btn2.addEventListener("click", function(){
    console.log("DOM2级事件");
},false);
  1. 示例二
//DOM0级事件
var btn1 = document.getElementById("button1");
btn1.onclick = function(){
    console.log("DOM0级事件");
}

//DOM2级事件
var btn2 = document.getElementById("button2");
btn2.addEventListener("click", function(){
    console.log("DOM2级事件");
},true);

这两个示例中,分别演示了DOM0级事件和DOM2级事件的使用。第一个示例中,我们分别使用了DOM0级事件和DOM2级事件来添加事件处理函数,在点击按钮后,分别输出“DOM0级事件”和“DOM2级事件”。

第二个示例中,我们在DOM2级事件中指定了事件处理程序在捕获阶段执行而不是在冒泡阶段执行,这里设置为 true。在这个示例中,我们点击按钮后,只输出了“DOM2级事件”,并没有输出“DOM0级事件”。这表明DOM0级事件只支持在冒泡阶段执行,而DOM2级事件可以在捕获阶段和冒泡阶段执行。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS中dom0级事件和dom2级事件的区别介绍 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • JavaScript 有用的代码片段和 trick

    当提到 JavaScript 有用的代码片段和 trick 时,我们通常指的是 JavaScript 开发者经常用到的一些技巧和代码片段。这些技巧和代码片段可以帮助我们更好地优化我们的代码并增强我们的开发能力。以下是一些实用的技巧和代码片段: 1. JavaScript 中的链式调用 链式调用是一种使代码更加紧凑、易于读取的技巧。它允许我们在一个方法的输出上…

    JavaScript 2023年6月10日
    00
  • JS与Ajax Get和Post在使用上的区别实例详解

    来讲一下 “JS与Ajax Get和Post在使用上的区别实例详解” 的攻略。首先,我们需要了解什么是 Ajax,Ajax 全称是 Asynchronous JavaScript and XML,可以异步地向服务器发送请求并获取响应,这使得我们可以在不刷新整个页面的情况下更新部分页面和数据。 Ajax Get 和 Post 方法的区别 在 Ajax 的请求中…

    JavaScript 2023年6月11日
    00
  • 开发跨浏览器javascript常见注意事项

    开发跨浏览器 JavaScript 常见注意事项 在开发 JavaScript 应用程序时,我们经常会遇到浏览器兼容性的问题。不同的浏览器可能会有不同的 JavaScript 实现、DOM 实现等等,导致开发过程中的一些不兼容问题。在这篇文章中,我们将提供一些常见的跨浏览器开发注意事项和技巧,以及具体的示例说明。 1. 检测浏览器 在开发跨浏览器 JavaS…

    JavaScript 2023年5月28日
    00
  • 微信小程序 wx:for遍历循环使用实例解析

    下面是关于“微信小程序 wx:for遍历循环使用实例解析”的详细攻略。 一、wx:for概述 在微信小程序中,我们经常需要在页面上展示列表数据。wx:for是一种循环渲染数据的方式,可以用来遍历一个数组,并将数组中的每个元素渲染到页面上。 二、wx:for使用方法 <view wx:for="{{array}}" wx:key=&q…

    JavaScript 2023年6月11日
    00
  • JavaScript 截取字符串代码实例

    下面是“JavaScript 截取字符串代码实例”的完整攻略。 什么是字符串截取? 在编程中,字符串截取是指在一个字符串中截取一段指定长度的字符或某一范围内的字符。在 JavaScript 中,通过截取字符串可以获取到需要使用的部分内容,这在字符串处理中是很常见的操作。 JavaScript 截取字符串的方法 JavaScript 提供了几种截取字符串的方法…

    JavaScript 2023年5月28日
    00
  • 解决idea开发遇到javascript动态添加html元素时中文乱码的问题

    解决idea开发遇到JavaScript动态添加HTML元素时中文乱码的问题有多种方案,以下是其中一种常见的解决方法: 前置知识 在讲解具体解决方案之前,需要了解如下几个前置知识: HTML的默认字符集是ISO-8859-1 不支持中文显示,可以通过设置charset属性来修改字符集 JavaScript中字符串编码方式默认为UTF-16 如果在JavaSc…

    JavaScript 2023年5月19日
    00
  • js的对象与函数详解

    JS的对象与函数详解 本文将讲解JavaScript中的对象和函数。对象是一种数据类型,它们可以具有属性和方法。函数是一种可调用的对象,它通常用来实现可重复使用的代码块。 对象 JavaScript中的对象可以看作是键值对的集合,每个键都是字符串,每个值可以是任意类型的数据。对象可以通过对象字面量的方式创建,也可以通过构造函数实例化。以下是创建对象的两种方式…

    JavaScript 2023年5月27日
    00
  • 获取dom元素那些讨厌的位置封装代码

    获取DOM元素位置是Web开发中比较常见的操作,但是由于不同浏览器之间存在差异,所以封装获取DOM元素位置代码时需要注意一些细节。在以下步骤中,我们将展示如何获取DOM元素的位置并将其封装到一个函数中。 1. 获取元素位置 文档坐标(client coordinate):指相对于左上角(0, 0)位置的像素坐标,通过DOM节点的clientX和clientY…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部