`
ljk126wy
  • 浏览: 5393 次
社区版块
存档分类
最新评论

HTML DOM addEventListener()

 
阅读更多

addEventListener() 方法用于向指定元素添加事件的方法 我个人理解为绑定事件。与之想对应的自然是解绑removeEventListener()

 

注意: Internet Explorer 8 及更早IE版本不支持 addEventListener() 方法,,Opera 7.0 及 Opera 更早版本也不支持。 但是,对于这些不支持该函数的浏览器,你可以使用 attachEvent() 方法来添加事件

element.addEventListener(event, function, useCapture)

 

event 指定事件名
function 必须。指定要事件触发时执行的函数。
useCapture 可选。布尔值,指定事件是否在捕获或冒泡阶段执行。

例子1 用户点击后使用 addEventListener() 方法来执行函数

 

<button id="myBtn">点我</button>
<p id="demo">

 

 

<script>
document.getElementById("myBtn").addEventListener("click", myFunction);
function myFunction() {
    document.getElementById("demo").innerHTML = "Hello World";
}

 

</script>

例子2 该实例使用 addEventListener() 方法在同一个按钮添加两个点击事件。

<button id="myBtn">点我</button>

 

<script>
var x = document.getElementById("myBtn");
x.addEventListener("click", myFunction);
x.addEventListener("click", someOtherFunction);
function myFunction() {
    alert ("Hello World!")
}
function someOtherFunction() {
    alert ("该函数也将被执行!")
}

 

 

例子3该实例使用 addEventListener() 方法在按钮中添加多个事件。

<button id="myBtn">点我</button>
<p id="demo"></p>

 

<script>
var x = document.getElementById("myBtn");
x.addEventListener("mouseover", myFunction);
x.addEventListener("click", mySecondFunction);
x.addEventListener("mouseout", myThirdFunction);
function myFunction() {
    document.getElementById("demo").innerHTML += "鼠标经过!<br>"
}
function mySecondFunction() {
    document.getElementById("demo").innerHTML += "点击!<br>"
}
function myThirdFunction() {
    document.getElementById("demo").innerHTML += "鼠标离开!<br>"
}
 

 

例子 3该实例演示了在使用 addEventListener() 方法时如何传递参数。

 

点击按钮执行一个计算。

 

<button id="myBtn">点我</button>
 
<p id="demo"></p>

  

<script>
var p1 = 5;
var p2 = 7;
 
document.getElementById("myBtn").addEventListener("click", function() {
myFunction(p1, p2);
});
 
function myFunction(a, b) {
var result = a * b;
document.getElementById("demo").innerHTML = result;
}
</script>

 

该实例演示了在添加事件监听时冒泡与捕获阶段的不同。

<div id="myDiv">
	<p id="myP">点击该段落, 我是冒泡</p>
</div><br>
<div id="myDiv2">
	<p id="myP2">点击该段落, 我是捕获</p>
</div>

 

<script>
document.getElementById("myP").addEventListener("click", function() {
    alert("你点击了 P 元素!");
}, false);
document.getElementById("myDiv").addEventListener("click", function() {
    alert("你点击了 DIV 元素!");
}, false);
document.getElementById("myP2").addEventListener("click", function() {
    alert("你点击了 P 元素!");
}, true);
document.getElementById("myDiv2").addEventListener("click", function() {
    alert("你点击了 DIV 元素!");
}, true);
</script>

 如果多个均为 true,则外层的触发先于内层;

如果多个均为 false,则内层的触发先于外层。

 游览器兼容

var x = document.getElementById("myBtn");
if (x.addEventListener) {                    //所有主流浏览器,除了 IE 8 及更早 IE版本
    x.addEventListener("click", myFunction);
} else if (x.attachEvent) {                  // IE 8 及更早 IE 版本
    x.attachEvent("onclick", myFunction);
}

 例子来源:http://www.runoob.com/jsref/met-element-addeventlistener.html

下面是我实际开发中接触到的例子

我们公司的网站做qq咨询的功能 每次打开网站就会onload到qq质询内容的js加载很慢 

原来的写法




 
 

<script charset="utf-8" src="http://wpa.b.qq.com/cgi/wpa.php"></script>


 
 

每次打开网站都会先加载qq质询的js 而且很慢

优化后的代码如下



 useCapture 为true也可以理解成就是先执行为false则是后执行

 

  • 大小: 19.2 KB
  • 大小: 53.6 KB
  • 大小: 23.3 KB
  • 大小: 41.5 KB
  • 大小: 51.6 KB
分享到:
评论

相关推荐

    HTML DOM 参考手册 电子书

    HTML DOM(Document Object Model)是万维网联盟(W3C)制定的一种标准,它提供了一种结构化的表示HTML或XHTML文档的树型接口。DOM允许编程者和脚本语言(如JavaScript)来动态更新、添加、删除以及改变任何元素和...

    HTML DOM 参考手册

    HTML DOM(Document Object Model)是Web开发中的一个关键概念,它是一种标准,允许程序员和脚本语言(如JavaScript)以结构化的方式访问和操作HTML或XML文档。DOM将网页视为一个树形结构,其中每个节点代表文档的一...

    htmlDOM.rar_DOM_HTML DOM_HTML dom_HTMLD_w3c htmld

    在这个“htmlDOM.rar”压缩包中,我们找到了一个名为“htmlDOM方法手册.chm”的文件,这很可能是关于HTML DOM的详细参考指南,特别适合初学者学习。 DOM将HTML或XML文档解析为一棵由节点构成的树形结构,每个节点...

    头歌教学实践平台 Web前端开发基础 JavaScript学习手册十四:HTML DOM-文档元素的操作(二)

    在Web前端开发中,JavaScript与HTML DOM(Document Object Model)的交互是至关重要的。这篇教程——"JavaScript学习手册十四:HTML DOM-文档元素的操作(二)"深入探讨了如何使用JavaScript来操纵HTML文档中的元素...

    html dom 手册

    6. **事件处理**:DOM支持事件监听和处理,例如`addEventListener`和`removeEventListener`方法用于添加和移除事件处理器,`onclick`, `onmouseover`等内联事件处理属性也可以使用。 7. **DOM操作**:可以使用`...

    js_HTML_Dom操作练习

    在JavaScript的世界里,HTML DOM(Document Object Model)是网页内容的一种结构化表示,它允许我们通过编程方式操纵HTML元素。本实践项目“js_HTML_Dom操作练习”旨在帮助初学者熟悉DOM的基本操作,包括查找、修改...

    HTML DOM 教程

    HTML DOM(Document Object Model)教程是web开发中的一个重要学习资源,尤其对于那些频繁使用JavaScript进行动态网页编程的开发者来说,掌握DOM技术至关重要。DOM是一种标准,它定义了如何表示HTML或XML文档,并...

    JS + HTML DOM

    【JS + HTML DOM】是关于JavaScript与HTML Document Object Model(文档对象模型)的结合使用,这一主题涵盖了如何通过JavaScript操作和动态更新HTML页面。在Web开发中,JavaScript是一种客户端脚本语言,它允许我们...

    w3school HTML DOM 中文教程

    HTML DOM(Document Object Model)是HTML和XML文档的编程接口,它将网页结构化为一个树形模型,允许程序员和脚本语言通过JavaScript或其他支持DOM的编程语言来访问和操作页面中的各个元素。这个w3school HTML DOM...

    dom教程 dom文档对象实例教程

    DOM(Document Object Model)是W3C制定的一种标准,它为HTML和XML文档提供了一种结构化的表示方式,并定义了程序可以如何访问和修改这种结构。DOM教程是学习JavaScript与网页交互的重要途径,通过理解DOM,开发者...

    Html Dom 手册

    6. `HtmlDom.chm`文件: 这个`.chm`文件是Windows的帮助文件格式,包含HTML DOM的手册内容。用户可以通过搜索和浏览来查找具体的信息,快速学习和应用DOM技术。 总之,HTML DOM是网页开发中的核心概念,它提供了一...

    HTMLDOM.rar_DOM_MSHTML

    在"HTMLDOM.CHM"文件中,很可能包含有关MSHTML接口的详细文档,包括类、方法、属性和事件的描述。CHM是Microsoft的帮助文件格式,它通常包含一系列组织良好的主题,帮助开发者快速查找所需的信息。你可以通过它来...

    JavaScript HTML DOM.docx

    ### JavaScript HTML DOM 知识点解析 #### 一、HTML DOM 概述 **HTML DOM (文档对象模型)** 是一种标准的对象模型,用于表示 HTML 文档,并定义了访问和操作 HTML 文档的标准方法、属性和事件。当浏览器加载 HTML ...

    HTMLDOM基础

    HTML DOM(文档对象模型)是Web开发中的一个关键概念,它提供了一种结构化的方式来表示HTML或XML文档,并允许编程语言如JavaScript与这些文档进行交互。DOM将文档视为一棵由节点组成的树,其中每个节点代表文档的一...

    javascript+dom书籍

    JavaScript 是一种轻量级的解释型编程语言,广泛应用于网页和网络应用的客户端脚本,而 DOM 则是 W3C 标准,它定义了HTML和XML文档的结构,并提供了与这些文档进行交互的方法。 **JavaScript 基础** JavaScript 是...

    Js操控Html Dom

    JavaScript(Js)是一种广泛用于网页和网络应用的脚本语言,尤其在操作HTML DOM(文档对象模型)方面具有重要作用。DOM是HTML和XML文档的一种结构化表示,它允许通过编程方式访问和修改文档内容、样式以及结构。这篇...

    DOM — DOM对象继承关系1

    在 DOM 中,所有对象都继承自 EventTarget 对象,EventTarget 对象提供了事件处理的基本方法,例如 addEventListener 和 removeEventListener。继承自 EventTarget 对象的还有 Node 对象,Node 对象是 DOM 树中的...

    HTML_DOM.。

    HTML DOM(Document Object Model)是HTML和XML文档的编程接口,它将网页结构化为一个树形模型,允许程序员和脚本通过JavaScript或...阅读`HtmlDom.chm`文件,你将能更深入地理解DOM的工作原理及其在实际项目中的应用。

    HTML_DOM_参考手册

    - DOM提供了事件监听和处理机制,如`addEventListener`和`removeEventListener`,可以绑定和解绑事件处理函数。 - 事件流包括捕获阶段、目标阶段和冒泡阶段,理解这些有助于优化事件处理。 5. **AJAX与DOM**: -...

Global site tag (gtag.js) - Google Analytics