`
bird12010
  • 浏览: 8046 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

《javascript高级程序设计2》学习笔记12 事件

 
阅读更多

事件冒泡:ie的事件流叫事件冒泡(事件开始由最具体逐级向上传播到较为不具体的节点)

事件捕获:netscape 提出的另一种事件流叫事件捕获(不太具体的节点逐级向下传播到具体的节点与冒泡相反。)

DOM事件流

3个阶段:事件捕获阶段,处于目标阶段和事件冒泡阶段。首先发生的是事件捕获,为捕获事件提供机会,然后是实际的目标接收到事件。最后一个阶段是冒泡阶段,可以再这个阶段对事件作出响应。

事件处理程序(或事件侦听器)

定义:响应某个事件的函数。以on开头。

DOM0级事件处理程序

<!doctype html>
<html>
<head>
<meta charset="utf-8">
    <title>DOM0级事件处理程序</title>
</head>
<body>
    <input type="button" id="myBtn" value="Click Me" />
    <input type="button" id="myRemoveBtn" value="Remove Event Handler" />
    <script type="text/javascript">
        var btn = document.getElementById("myBtn");
        btn.onclick = function(){
            alert(this.id);
        };
        
        var removeBtn = document.getElementById("myRemoveBtn");
        removeBtn.onclick = function(){
             btn.onclick = null;//删除事件处理程序
        };
    </script>
</body>
</html>

 DOM2级事件处理程序

定义了2个方法,用于处理制定和删除事件处理程序的操作:addEventListener()和removeEventListener()

接收三个参数:要处理的事件名,作为事件处理程序的函数, 一个布尔值。 true:表示在捕获阶段调用事件处理程序。false:表示在冒泡阶段调用。

 

主要好处是:可以添加多个事件处理程序。

<!doctype html>
<html>
<head>
<meta charset="utf-8">
    <title>DOM2级事件处理程序</title>
</head>
<body>
    <input type="button" id="myBtn" value="Click Me" />
   <p>本实例在IE9以下的浏览器无法运行。</p>
    <script type="text/javascript">
        var btn = document.getElementById("myBtn");
        btn.addEventListener("click", function(){
            alert(this.id);
        }, false);
        btn.addEventListener("click", function(){
            alert("Hello world!");
        }, false);

    </script>
</body>
</html>

 

分享到:
评论

相关推荐

    JavaScript高级程序设计2,学习笔记---第一篇

    JavaScript高级程序设计是每个前端开发者深入理解这门语言所必经之路。这篇学习笔记将带你探索JavaScript的核心概念,包括变量、数据类型、控制流、函数、对象和类等,这些都是构建复杂应用程序的基础。 首先,我们...

    HTML5高级程序设计学习笔记

    ### HTML5高级程序设计学习笔记 #### 一、HTML5新增结构标签 在HTML5中,为了更好地组织页面内容并增强语义性,引入了一系列新的结构标签,这些标签不仅能够帮助开发者更清晰地定义页面的不同部分,同时也为搜索...

    JavaScript高级程序设计 学习笔记之DOM基础(五)

    这篇"JavaScript高级程序设计 DOM基础笔记.doc"文档可能详细介绍了以上这些概念,并可能包含实例和实践建议,有助于深入理解DOM操作和JavaScript在网页中的作用。通过学习和实践,开发者能更好地控制网页行为,实现...

    javascript高级程序设计笔记

    javacript高级程序设计的个人学习总结,涉及到很多javascript的高级特性

    Javascript高级程序设计---笔记.pdf

    以上只是JavaScript高级程序设计中的一部分内容,实际的学习笔记会更深入地探讨这些主题,包括异常处理、作用域链、闭包、异步编程(如回调函数、Promise、async/await)、模块系统(CommonJS、ES modules)、正则...

    Javascript高级程序设计---笔记归类.pdf

    这份“JavaScript高级程序设计---笔记归类.pdf”文档显然详细整理了JavaScript的关键知识点,包括ECMAScript规范、DOM操作、数据类型、运算符、流程控制语句、函数以及面向对象编程等。 首先,ECMAScript是...

    毕设&课设&项目&实训-基于JavaScript高级程序设计第四版的学习笔记.zip

    这本“JavaScript高级程序设计第四版”的学习笔记涵盖了JavaScript的各个方面,旨在帮助学生、开发者以及对编程感兴趣的人深入理解这一强大的脚本语言。这份笔记是针对毕设、课设、项目实训等实践性学习场景编写的,...

    JavaScript高级程序设计(第3版)学习笔记10 再访js对象

    1、对象再认识 (1)对象属性和特性  什么是属性(Property),什么是特性(Attribute),这有什么区别?我不想也不会从语义学上去区分,对于这系列文章来说,属性就是组成对象的一个部分,广义上也包括对象的方法...

    对javascript的一点点认识总结《javascript高级程序设计》读书笔记

    在深入探讨JavaScript编程语言之前,...在《JavaScript高级程序设计》这本书中,作者深入探讨了这些概念,并提供了一系列实用的编程技巧和最佳实践,这对于任何希望深化JavaScript知识的开发者来说都是一份宝贵的资源。

    JavaScript高级程序设计 DOM学习笔记

    根据给定的文件信息,以下是关于JavaScript中DOM(文档对象模型)的相关知识点详解: DOM是文档对象模型(Document Object Model)的缩写,它是一个跨平台的接口,由W3C组织制定标准,用于在HTML或XML文档中创建和...

    第四章(js高级程序设计学习笔记)----2

    在本节中,我们将深入探讨JavaScript的高级程序设计,特别是关注"第四章(js高级程序设计学习笔记)----2"的主题。这一章很可能涵盖了JavaScript的核心概念,包括原型链(Prototype Chaining)。通过阅读名为...

    JavaScript高级程序设计 错误处理与调试学习笔记

    在进行JavaScript编程时,错误处理和调试是不可避免的两个重要环节。良好的错误处理机制能够帮助开发者快速定位和解决问题,而有效的调试技巧则能够帮助开发者理解和优化代码逻辑。接下来,我们将详细介绍如何在...

    毕设&课设&项目&实训-JavaScript学习笔记大全,基于JavaScript高级程序设计写的.zip

    可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】: 项目具有较高的学习借鉴价值,也可直接拿来修改复刻。 对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,...

Global site tag (gtag.js) - Google Analytics