JavaScript---事件监听
JavaScript的事件监听是通过addEventListener()来实现的
它算是事件绑定的第二种方式。
他的特别之处在于这种绑定事件的方法不会被同名事件覆盖。
看具体的demo
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>事件监听</title>
<script>
window.onload = function(){
/*
事件绑定的第二中方式:
事件监听addEventListener()
*/
var btn =document.getElementById('btn');
var btn2 =document.getElementById('btn2'); // 这种事件绑定方法同名事件会被覆盖
btn.onclick = function(){
console.log('click');
} btn.onclick = function(){
console.log('第二次click');
} btn.addEventListener('click',function(){
console.log('第三次click');
},false); btn.onclick = function(){
console.log('第四次click');
} // 清除事件
btn.onclick = null; // 事件监听
// addEventListener()
btn2.addEventListener('click',function(){
console.log('第1次点击')
},false);
btn2.addEventListener('click',function(){
console.log('第2次点击')
},false); // 推荐的事件监听方式
// 用具名函数
function handler(){
console.log('第3次点击')
}
btn2.addEventListener('click',handler,false); // 清除事件监听
// 参数一定要跟绑定时一样
btn2.removeEventListener('click',handler); // ie8-的事件监听方式
// attachEvent('onclick',)
// 没有第三个参数
// btn2.attachEvent('onclick',handler);
//
// IE8-清除事件监听
// btn2.detachEvent('onclick',handler);
}
</script>
</head>
<body>
<button id="btn">按钮</button>
<button id="btn2">按钮2</button>
</body>
</html>
要注意IE-8下的监听方式是attachEvent
JavaScript---事件监听的更多相关文章
- Javascript事件监听
FireFox : addEventListener()方法 IE : attachEvent()方法 为HTML元素添加一个事件监听, 而不是直接对元素的事件属性(如:onclick.onmouse ...
- javascript事件监听与事件委托
事件监听与事件委托 在js中,常用到element.addEventListener()来进行事件的监听.但是当页面中存在大量需要绑定事件的元素时,这种方式可能会带来性能影响.此时,我们可以用事件 ...
- JavaScript事件监听以及addEventListener参数分析
事件监听 在Javascript中事件的监听是用来对某些操作做出反应的方法.例如监听一个按钮的pressdown, 或者获取鼠标左键按下时候鼠标的位置.这些都需要使用监听来完成.监听的函数很简单:ad ...
- 在Javascript中监听flash事件(转)
在Javascript中监听flash事件,其实有两种做法: 1.在特定的环境下(例如专门制作的flash),大家约定一个全局函数,然后在flash的事件中用ExternalInterface.cal ...
- JavaScript的事件监听、捕获和冒泡
在前端开发中,我们经常需要对某些事件进行监听.这样只要在指定的元素上触发了该事件,就会执行一个回调函数来进行相关的操作. 而JavaScript中事件监听的方法总共有三种,分别如下: element. ...
- (12)JavaScript之[事件][事件监听]
事件 /** * 事件: * onload 和 onunload 事件在用户进入或离开页面时被触发 * * onchange事件常结合对输入字段的验证来使用 * onmouseover 和 onmou ...
- Javascript事件模型系列(三)jQuery中的事件监听方式及异同点
作为全球最知名的js框架之一,jQuery的火热程度堪称无与伦比,简单易学的API再加丰富的插件,几乎是每个前端程序员的必修课.从读<锋利的jQuery>开始,到现在使用jQuery有一年 ...
- javascript的事件监听与捕获和冒泡
在前端开发中,我们经常需要对某些事件进行监听.这样只要在指定的元素上触发了该事件,就会执行一个回调来进行相关的操作. 而js中事件监听方法总共有三种,分别如下所示: element.addEventL ...
- Node.js 教程 05 - EventEmitter(事件监听/发射器 )
目录: 前言 Node.js事件驱动介绍 Node.js事件 注册并发射自定义Node.js事件 EventEmitter介绍 EventEmitter常用的API error事件 继承EventEm ...
- 让 select 的 option 标签支持事件监听(如复制操作)
这标题,让option支持事件监听,应该不难的呀,有什么好讲的? 其实还是有的,默认在浏览器代码是无法直接对option标签进行操作的,不仅包括JS事件监听,还是CSS样式设置 查了一些资料,姑且认为 ...
随机推荐
- css选择器中间的空格
div p div标签下 的p标签 (后代) div .a div 的后代类属性有a的 div.a 类属性有a的div标签 div.a1.a2 多类选择器 类包含a1,a2的div标签 div.a1 ...
- window7主题破解与恢复(复制)
window7主题破解与恢复 1 2 3 分步阅读 windows7主题破解后可以换自己喜欢的主题,但也有一些弊端.这里帮助打家破解与恢复. 工具/原料 UniversalThemePatcher.e ...
- 4-es6的模块化编程
诞生背景其他都是第三方库,只有es才是官方正宗的,如果es早就制定的话,也不至于现在的这么百花齐放(混乱)的局面了 核心规范一个文件就是一个模块export是暴露出模块的公开方法import是导入 实 ...
- scala drools and map
需求,安全检查,例如Linux系统,用户安全检查,配置项检查等,这些检查的规则在Drools里面去实现,数据传送过来即可, 问题:如何定义数据结构,不同的检查项会有不同的数据结构,如何规范呢? 思路: ...
- 利用Masscan批量生成随机ip地址表
简介 Masscan是Kali下集成的高效扫描器,和nmap命令有很多相似之处 命令生成随机ip masscan -sL 10.0.0.0/24 > c段.txt masscan -sL 10. ...
- Docker-docker镜像
前言 在 Docker 1.13+ 版本中推荐使用 docker image 来管理镜像. 查看安装的Docker版本信息: [dockuser@localhost Desktop]$ docker ...
- SQL学习笔记之MySQL查询的三层解析
Mysqld的三层结构: SQL类型: DDL:数据库对象定义语言 对库和表的定义 DML:操作语言 DCL:控制语言 结构化的查询语言:select * from user; 执行该语句时: 1.连 ...
- 用python打印99乘法口诀表
代码如下 #!/usr/bin/env python # encoding: utf-8 __author__ = 'Nicholas.Cage' i = 1 j = 1 while i <= ...
- 打开Mac OSX原生的NTFS功能
插上磁盘 从finder或者使用以下命令查看到磁盘的Volume Name: diskutil list /dev/disk0 #: TYPE NAME SIZE IDENTIFIER 0: GUID ...
- Spring的配置相关知识(学习spring boot的预备知识)
我们经常说的控制反转(Inversion of Control-IOC)和依赖注入(dependency injection-DI)在Spring环境下是等同的概念,控制反转是通过依赖注入实现的.所谓 ...