JavaScript三种绑定事件方式及相互之间的区别分析


Posted in Javascript onJanuary 10, 2017

本文实例讲述了JavaScript三种绑定事件方式及相互之间的区别。分享给大家供大家参考,具体如下:

JavaScript三种绑定事件的方式:

1.

<div id="btn" onclick="clickone()"></div> //直接在DOM里绑定事件
<script>
function clickone(){ alert("hello"); }
</script>

2.

<div id="btn"></div>
<script>
document.getElementById("btn").onclick = function(){ alert("hello"); } //脚本里面绑定
</script>

3.

<div id="btn"></div>
<script>
document.getElementById("btn").addeventlistener("click",clickone,false); //通过侦听事件处理相应的函数
function clickone(){ alert("hello"); }
</script>

那么问题来了,1 和 2 的方式是我们经常用到的,那么既然已经有两种绑定事件的方法为什么还要有第三种呢?答案是这样的:

用 "addeventlistener" 可以绑定多次同一个事件,且都会执行,而在DOM结构如果绑定两个 "onclick" 事件,只会执行第一个;在脚本通过匿名函数的方式绑定的只会执行最后一个事件。

1.

<div id="btn" onclick="clickone()" onclick="clicktwo()"></div>
<script>
function clickone(){ alert("hello"); } //执行这个
function clicktwo(){ alert("world!"); }
</script>

2.

<div id="btn"></div>
<script>
document.getElementById("btn").onclick = function(){ alert("hello"); }
document.getElementById("btn").onclick = function(){ alert("world"); } //执行这个
</script>

3.

<div id="btn"></div>
<script>
document.getElementById("btn").addeventlistener("click",clickone,false);
function clickone(){ alert("hello"); } //先执行
document.getElementById("btn").addeventlistener("click",clicktwo,false);
function clicktwo(){ alert("world"); } //后执行
</script>

以上;可根据场景灵活选择。

PS:关于javascript常用事件及相关说明还可参考本站在线工具:

javascript事件与功能说明大全:
http://tools.3water.com/table/javascript_event

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
基于JQuery实现CheckBox全选全不选
Jun 27 Javascript
JS获取地址栏参数的小例子
Aug 23 Javascript
JavaScript图片轮播代码分享
Jul 31 Javascript
AngularJS身份验证的方法
Feb 17 Javascript
跨域资源共享 CORS 详解
Apr 26 Javascript
基于JavaScript实现轮播图代码
Jul 14 Javascript
Bootstrap零基础入门教程(二)
Jul 18 Javascript
Bootstrap图片轮播组件Carousel使用方法详解
Oct 20 Javascript
jquery 判断div show的状态实例
Dec 03 Javascript
解决angularjs service中依赖注入$scope报错的问题
Oct 02 Javascript
Vue路由守卫之路由独享守卫
Sep 25 Javascript
JavaScript实现横版菜单栏
Mar 17 Javascript
详解使用Vue.Js结合Jquery Ajax加载数据的两种方式
Jan 10 #Javascript
JavaScript获取键盘按键的键码(参照表)
Jan 10 #Javascript
详解vue之页面缓存问题(基于2.0)
Jan 10 #Javascript
jQuery验证表单格式的使用方法
Jan 10 #Javascript
Html5 js实现手风琴效果
Apr 17 #Javascript
jquery做个日期选择适用于手机端示例
Jan 10 #Javascript
javascript删除html标签函数cIsHTML
Jan 09 #Javascript
You might like
PHP入门
2006/10/09 PHP
php基础知识:类与对象(4) 范围解析操作符(::)
2006/12/13 PHP
配置Nginx+PHP的正确思路与过程
2016/05/10 PHP
laravel实现一个上传图片的接口,并建立软链接,访问图片的方法
2019/10/12 PHP
fix-ie5.js扩展在IE5下不能使用的几个方法
2007/08/20 Javascript
JavaScript接口实现代码 (Interfaces In JavaScript)
2010/06/11 Javascript
Javacript实现颜色梯度变化和渐变的效果代码
2013/05/31 Javascript
使用jquery解析XML示例代码
2014/09/05 Javascript
node.js超时timeout详解
2014/11/26 Javascript
使用JavaScript刷新网页的方法
2015/06/04 Javascript
基于jQuery倒计时插件实现团购秒杀效果
2016/05/13 Javascript
深入理解JavaScript定时机制
2016/10/27 Javascript
webpack常用配置项配置文件介绍
2016/11/07 Javascript
利用jquery实现下拉框的禁用与启用
2016/12/07 Javascript
Vue组件选项props实例详解
2017/08/18 Javascript
JS实现的抛物线运动效果示例
2018/01/30 Javascript
彻底弄懂 JavaScript 执行机制
2018/10/23 Javascript
微信小程序获取用户绑定手机号方法示例
2019/07/21 Javascript
详解解决小程序中webview页面多层history返回问题
2019/08/20 Javascript
Object.keys() 和 Object.getOwnPropertyNames() 的区别详解
2020/05/21 Javascript
[01:11:37]完美世界DOTA2联赛PWL S2 SZ vs FTD.C 第一场 11.19
2020/11/19 DOTA
python自动化测试实例解析
2014/09/28 Python
使用Python求解最大公约数的实现方法
2015/08/20 Python
python+matplotlib演示电偶极子实例代码
2018/01/12 Python
python按综合、销量排序抓取100页的淘宝商品列表信息
2018/02/24 Python
python 利用栈和队列模拟递归的过程
2018/05/29 Python
Python可变和不可变、类的私有属性实例分析
2019/05/31 Python
python求最大值最小值方法总结
2019/06/25 Python
基于django传递数据到后端的例子
2019/08/16 Python
用Python解数独的方法示例
2019/10/24 Python
python 判断一组数据是否符合正态分布
2020/09/23 Python
纯DOM+CSS3实现简单的小风车动画
2016/09/27 HTML / CSS
市场营销毕业生自荐信
2013/11/23 职场文书
工厂见习报告范文
2014/10/31 职场文书
2016年“11.11”光棍节活动总结
2016/04/05 职场文书
科学家测试在太空中培育人造肉,用于未来太空旅行
2022/04/29 数码科技