- 浏览: 2616735 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (1286)
- js-oop (2)
- js-window (10)
- js-event (19)
- js-string (37)
- js-array (27)
- js-page (4)
- js-dom (62)
- js-lang (8)
- js-number (7)
- js-platform (3)
- js-object (15)
- js-element (3)
- js-browser (7)
- js-url (6)
- js-date (10)
- css基础 (48)
- css优化 (15)
- html基础 (17)
- html标签 (19)
- js基础 (117)
- js-兼容性差异 (33)
- js引擎 (3)
- js性能 (14)
- json (6)
- jQuery源码浅析 (43)
- web mobile开发资料 (78)
- js跨域 (2)
- html5 (74)
- html5-canvas (7)
- css3 (53)
- 浏览器 (5)
- api设计学 (3)
- js-加载 (3)
- linux (37)
- 架构师 (1)
- php (2)
- self开发的脚本库--凤凰 (2)
- web应用名词 (6)
- javascript新特性翻译 (8)
- ajax (6)
- jQuery动画效果 (7)
- prototype的解读 (13)
- 优秀插件翻译 (1)
- css解决方案 (26)
- 数据库 (2)
- english daily (59)
- 浏览器内核探究 (1)
- jQuery插件介绍 (9)
- jquery基础篇 (26)
- chrome浏览器问题整理 (14)
- js选择器那些事 (3)
- 前端框架 (26)
- Firefox私有属性 (11)
- webkit私有属性集合 (17)
- 书籍推荐 (21)
- 数据结构 (1)
- 网站建设相关 (7)
- 好文翻译 (2)
- 个人作品 (3)
- kissy的解读 (4)
- css-layout(布局研究) (5)
- less研究 (1)
- YUI探究 (1)
- hash探究 (1)
- js动画 (7)
- 前端面试题 (37)
- css书写规范 (1)
- js模板引擎 (6)
- js模块化 (19)
- 编写高质量代码 (3)
- 性能探究--应用协议 (2)
- 前端图像处理 (19)
- Mac OS相关 (21)
- 正则表达式 (11)
- 离线应用相关 (0)
- 前端工具 (65)
- nodeJS (55)
- jquery优化篇 (2)
- 设计模式探究系列 (3)
- windows7 (2)
- IE10 (10)
- 微博开放平台探究 (2)
- 常用web服务接口 (1)
- 数据存储相关 (8)
- 零时文件 (2)
- jQuery Mobile (16)
- backbone (15)
- underscore (22)
- sass (11)
- android (3)
- phonegap (10)
- IE私有 (11)
- qwrap (8)
- git (14)
- chrome extensions (5)
- freemarker (11)
- angularJS (3)
- seo (2)
- markdown (3)
- css动画 (4)
- 安卓开发 (2)
- React (7)
- 活动页技术 (1)
- 网络安全 (3)
- grunt (7)
- Lo-Dash (3)
- 前端国际化 (4)
- 版本控制 (2)
- 盒模型 (4)
- 微信开发 (1)
- Mock数据工具 (1)
- sails (1)
- vim (1)
- js-color (1)
- iOS 基础 (43)
最新评论
-
jertom:
<div id="showInfo&q ...
addEventListener等事件监听的参数细谈 -
乌托邦国王:
引用[u][/u]
css3动画属性系列之transform细讲移动translate -
hvang1988:
能提供附件下载吗,找不到js库,google封了访问不了
Syntaxhighlighter---代码高亮插件介绍 -
sscsacdsadcsd:
我的天 那到底是为什么function是object我看und ...
typeof func ==='function'的疑惑 -
wkjiangwk:
试了,没用,你们从不去测试。
介绍一下x-webkit-speech -------实现语音输入
简单记录,学习参考
前言:
写的目的主要是细化到具体的参数,兼容性的文章可以参考其他我博客的文章。
1.addEventListener(type,listener.useCapture)
- type 字符串,事件名称,如'click'等 不需要'on'前缀
- listener 事件处理的函数,实现EventListener接口
- useCapture 是否使用捕获--- true为捕获,false为冒泡
a. 先从第3个参数开始吧。
/* html文档树结构 */ <div id="out"> <div id="innerP"> <div id="innerChild">最里面的孩子</div> </div> </div> <div id="showInfo"></div>
var out = document.getElementById('out'); var innerP = document.getElementById('innerP'); var innerChild = document.getElementById('innerChild'); var infoShow = document.getElementById('infoShow'); /* 绑事件 */ out.addEventListener('click',function(){infoShow.innerHTML += 'outDiv' + '<br />'},false); innerP.addEventListener('click',function(){infoShow.innerHTML += 'innerP' + '<br />'},false); innerChild.addEventListener('click',function(){infoShow.innerHTML += 'innerChild' + '<br />'},false);
测试原理设计:
因为我们测试的是第3个参数,它有true和false两个值,所以有六种排列
测试结果:
- 设置了true的触发的顺序永远在false之前。
比如:我修改了innerP的true,在点击innerChild的时候触发顺序还是innerP在前。
2. 全为false的话
点击innerChild触发的顺序是innerChild-------innerP------outDiv
3. 全为true的话
点击innerChild触发的顺序是outDiv------innerP-------innerChild
b. 下面说说第二个参数listener
- 可以附加多个事件处理函数,执行顺序按照绑定的先后
- 还有就是关于处理函数删除的问题,使用addEventListener()将事件处理函数加入到捕获阶段,则必须在removeEventListener()中指明是捕获阶段,才能正确地删除这个事件处理函数。
使用传统的方法直接给事件处理函数属性赋值,事件处理函数将被添加到事件的冒泡阶段。
var out = document.getElementById('out'); out.onclick = fnClick; out.addEventListener('click',fnClick,false);
但是直接赋值的不同点在于,后续对事件处理函数的赋值会清除前面的赋值。
发表评论
-
动态创建style并写入
2013-08-06 11:35 0动态创建style标签,并写入内容: ... -
array中最后一个空元素的差异
2013-06-05 16:53 1460本文来自w3help的一篇《SJ2007: ... -
History全兼容方案之ie6-7
2013-05-08 16:01 1614在IE6-7中无法使用hash来产生历史记录 ... -
new Date返回值的差异
2013-01-04 11:37 2069//返回当前的时间 new Date(); ... -
IE下加载flash相关
2012-12-17 10:21 1386case: IE在加载flash的时候,需要对Obj ... -
IE下删除自定义属性的兼容性问题
2012-12-17 10:02 2855很多时候我们会给某个dom元素赋予一些自定义的属 ... -
获取flash对象
2012-12-03 15:06 1676场景:获取swf对象 先上一张图: 来自 ... -
关于cssText的差异
2012-10-10 19:56 2197其实很多人应该接触过cssText这个style对象的属性。 ... -
getAttribute和setAttribute设置style的兼容问题
2012-10-10 19:25 3100其实前面写过一篇“获取和设置目标元素的属性值”的,本文补充说明 ... -
关于script标签的onerror事件
2012-10-01 01:56 7993其实写过jsonp相关api或者了解jsonp原理的同学其实都 ... -
获取head元素
2012-09-17 15:21 1882先上一段jquery 1.7.1版本的代码片段: ... -
navigator对象获取浏览器语言的兼容性
2012-09-09 20:37 2366关于navigator对象中与语言相关的属性直接的差异 ... -
document.uniqueID
2012-09-07 14:16 2592uniqueID 是IE 私有的只读属性 ... -
关于textarea下空格和回车
2012-08-07 18:10 20281、关于textarea下的回车: IE下:\r ... -
iframe相关case之allowTransparency属性
2012-07-27 12:47 18551、在使用iframe调用的页面,IE(不包含ie9)会以白 ... -
关于window.close()各大浏览器兼容的解决方案
2012-06-16 16:39 15593前言: 很多人可能没有关注过window. ... -
关于动态修改script标签的src的值引发的一些思考
2012-05-10 16:07 7338前言: 最近在逛各家UED博客的时候,在w3ctech ... -
DOM-hasAttribute方法
2012-05-06 17:30 1729DOM hasAttribute()方法 ... -
获取页面编码
2012-05-03 19:44 1362简单记录,个人学习 document.char ... -
选择器那些事之querySelector与querySelectorAll
2012-04-03 19:39 1784querySelector 和 querySelectorAl ...
相关推荐
JavaScript事件监听机制是前端开发中极其重要的一环,它允许开发者对用户行为(如点击、按键、鼠标移动等)作出响应。事件监听涉及的几个核心概念包括事件传播的两种方式:事件捕获和事件冒泡,以及兼容性问题和事件...
本文实例讲述了JavaScript使用addEventListener添加事件监听用法。分享给大家供大家参考。具体实现方法如下: <!DOCTYPE html> <html lang=en> <head> <title>This text is the title of the...
`addEventListener`和`removeEventListener`是`cc.EventTarget`接口提供的方法,它们允许我们对任何具有事件处理能力的对象添加或移除事件监听器。 ### 事件类型 Cocos Creator支持多种内置事件类型,包括但不限于...
在Web开发中,尤其是针对移动设备的优化,`addEventListener`是一个关键的方法,它允许我们对DOM元素添加事件监听器。本文将深入探讨如何使用`addEventListener`来监听`scroll`和`touch`事件,并理解其中涉及的技术...
可以使用`addEventListener`方法添加事件监听器,并处理不同的滚轮事件名称。 ```javascript document.addEventListener('DOMContentLoaded', function() { var body = document.body; // 针对大部分浏览器 ...
在传统的事件监听器中,我们通常使用`addEventListener`方法添加事件处理函数,如以下示例所示: ```javascript document.addEventListener("click", fn, false/true); ``` 这里的第三个参数是一个布尔值,用来...
addEventListener 有三个参数:第一个参数表示事件名称(不含 on,如 “click”);第二个参数表示要接收事件处理的函数;第三个参数为 useCapture,本文就讲解它。 代码如下: ”outDiv”> ”middleDiv”> ”...
在js中,常用到element.addEventListener()来进行事件的监听。但是当页面中存在大量需要绑定事件的元素时,这种方式可能会带来性能影响。此时,我们可以用事件委托的方式来进行事件的监听。 每个事件都经历三个阶段 ...
事件绑定是指在网页中添加事件监听器的过程,当特定的用户操作发生时,比如点击、鼠标移动、按键操作等,就会触发事先设置好的函数进行响应。在早期的JavaScript中,我们通常通过在HTML标签上直接使用事件属性来实现...
要添加事件监听器,可以使用`addEventListener`方法: ```javascript element.addEventListener(eventName, callbackFunction); ``` 这里的`element`是你想要监听事件的DOM元素,`eventName`是你要监听的事件类型...
在AutoJS中,可以使用`addEventListener`方法为下拉菜单绑定`onItemClick`、`onItemSelected`等事件。这些事件会在用户点击列表项或选择特定项时触发。 ```javascript var listView = android.widget.ListView....
JavaScript(JS)事件监听与触发在实现响应式布局中扮演着重要角色。通过理解这一概念,我们可以创建更加动态且适应性强的网页。 首先,我们需要了解响应式布局的基础,这是由Ethan Marcotte在2010年提出的。响应式...
本篇文章将基于提供的代码片段深入探讨如何在ActionScript中实现监听事件并传递多个参数的功能。 ### ActionScript监听事件传多个参数 #### 一、代码解析 首先来看第一个代码段: ```actionscript public static ...
html DOM元素有很多on开头的监听事件,如onload、onclick等,见DOM事件列表。但是同一种事件,后面注册的会覆盖前面的: [removed] = function(){ alert(1); } [removed] = function(){ alert(2)...
这个函数通常会接收到一个`KeyboardEvent`对象作为参数,该对象包含了关于键盘事件的所有信息,如按键码(keyCode)等: ```actionscript function handleKeyDown(event:KeyboardEvent):void { // 处理键盘按下...
在这个例子中,我们使用`addEventListener`方法为`id`为`gopherImage`的图片元素添加了一个点击事件监听器。这样,当用户点击这个图片时,`handleClick`函数会被调用。 对于`hover_gophers-1.png`,这是另一种交互...
在JavaScript编程中,事件监听是实现用户交互的关键技术。它允许我们对用户的特定行为做出响应,比如点击按钮、提交表单或更改输入字段等。本文将深入探讨事件监听及其相关基础知识,包括事件绑定、事件解绑、常见...
在非IE浏览器中,我们可以使用`addEventListener`方法来添加事件监听器,而在IE浏览器中,则需要使用`attachEvent`。 例如,使用`addEventListener`添加一个点击事件监听器: ```html 点击我 var button = ...