js动态添加的DIV中的onclick事件简单实例


Posted in Javascript onJuly 25, 2016

最简单的是这样:

<input type="button" onclick="alert(this.value)" value="我是 button" />

动态添加onclick事件:

<input type="button" value="我是 button" id="bu">
<script type="text/javascript">
var bObj=document.getElementById("bu");
bObj.onclick= objclick;
function objclick(){alert(this.value)};
</script>

如果使用匿名函数 function(){},则如下面所示:

<input type="button" value="我是 button" id="bu">
<script type="text/javascript">
var bObj=document.getElementById("bu");
bObj.onclick=function(){alert(this.value)};
</script>

上面的方法其实原理都一样,都是定义 onclick 属性的值。值得注意的是,如果多次定义 obj.onclick,例如:obj.onclick=method1; obj.onclick=method2; obj.onclick=method3,那么只有最后一次的定义obj.onclick=method3才生效,前两次的定义都给最后一次的覆盖掉了。

再看 IE 中的 attachEvent:

<input type="button" value="我是拉登" id="bu">
<script type="text/javascript">
var bObj = document.getElementById("bu");
bObj.attachEvent("onclick",method1);
bObj.attachEvent("onclick",method2);
bObj.attachEvent("onclick",method3);
function method1(){alert("第一个alert")}
function method2(){alert("第二个alert")}
function method3(){alert("第三个alert")}
</script>

执行顺序是 method3 > method2 > method1 ,先进后出,与堆栈中的变量相似。需要注意的是attachEvent 中第一个参数是on开头的,可以是 onclick/onmouseover/onfocus 等等

据说(未经确认验证)在 IE 中使用 attachEvent 后最好再使用 detachEvent 来释放内存

再看看 Firefox 中的的 addEventListener:

<input type="button" value="我是布什" id="bu">
<script type="text/javascript">
var bObj = document.getElementById("bu");
bObj.addEventListener("click",method1,false);
bObj.addEventListener("click",method2,false);
bObj.addEventListener("click",method3,false);
function method1(){alert("第一个alert")}
function method2(){alert("第二个alert")}
function method3(){alert("第三个alert")}
</script>

可以看到,在 ff 中的执行顺序是 method1 > method2 > method3 , 刚好与 IE 相反,先进先出。需要注意的是 addEventListener 有三个参数,第一个是不带“on”的事件名称,如 click/mouseover/focus等。

以上这篇js动态添加的DIV中的onclick事件简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JQuery select控件的相关操作实现代码
Sep 14 Javascript
node.js中的fs.writeSync方法使用说明
Dec 15 Javascript
详细分析JavaScript函数定义
Jul 16 Javascript
js窗口震动小程序分享
Nov 28 Javascript
jquery select2的使用心得(推荐)
Dec 04 Javascript
jQuery密码强度验证控件使用详解
Jan 05 Javascript
JavaScript制作简易计算器(不用eval)
Feb 05 Javascript
Angular 2.x学习教程之结构指令详解
May 25 Javascript
JS实现根据指定值删除数组中的元素操作示例
Aug 02 Javascript
VUE在for循环里面根据内容值动态的加入class值的方法
Aug 12 Javascript
vue 中引用gojs绘制E-R图的方法示例
Aug 24 Javascript
JavaScript检测是否开启了控制台(F12调试工具)
Oct 02 Javascript
js微信分享API
Oct 11 #Javascript
jQuery简单注册和禁用全局事件的方法
Jul 25 #Javascript
jQuery ajax方法传递中文时出现中文乱码的解决方法
Jul 25 #Javascript
Javascript的比较汇总
Jul 25 #Javascript
[原创]jQuery常用的4种加载方式分析
Jul 25 #Javascript
JS仿百度自动下拉框模糊匹配提示
Jul 25 #Javascript
JS本地刷新返回上一页代码
Jul 25 #Javascript
You might like
PHP 和 MySQL 开发的 8 个技巧
2007/01/02 PHP
一个自定义位数的php多用户计数器代码
2007/03/11 PHP
常用的PHP数据库操作方法(MYSQL版)
2011/06/08 PHP
老生常谈PHP数组函数array_merge(必看篇)
2017/05/25 PHP
Laravel框架实现的rbac权限管理操作示例
2019/01/16 PHP
解决FireFox下[使用event很麻烦]的问题
2006/11/26 Javascript
用 JavaScript 迁移目录
2006/12/18 Javascript
Javascript 面向对象 继承
2010/05/13 Javascript
深入理解JavaScript系列(8) S.O.L.I.D五大原则之里氏替换原则LSP
2012/01/15 Javascript
JSON.stringify转换JSON时日期时间不准确的解决方法
2014/08/08 Javascript
jQuery 和 CSS 的文本特效插件集锦
2014/12/12 Javascript
javascript实现3D切换焦点图
2015/10/16 Javascript
JavaScript比较当前时间是否在指定时间段内的方法
2016/08/02 Javascript
Vue.js项目部署到服务器的详细步骤
2017/07/17 Javascript
分分钟学会vue中vuex的应用(入门教程)
2017/09/14 Javascript
jQuery选择器之属性筛选选择器用法详解
2017/09/19 jQuery
node+koa实现数据mock接口的方法
2017/09/20 Javascript
使用vue-cli+webpack搭建vue开发环境的方法
2017/12/22 Javascript
小程序视频列表中视频的播放与停止的示例代码
2018/07/20 Javascript
Vue 实现输入框新增搜索历史记录功能
2019/10/15 Javascript
JS事件循环机制event loop宏任务微任务原理解析
2020/08/04 Javascript
vue 二维码长按保存和复制内容操作
2020/09/22 Javascript
vue3自定义dialog、modal组件的方法
2021/01/04 Vue.js
[51:43]OG vs LGD 2018国际邀请赛淘汰赛BO3 第五场 8.26
2018/08/30 DOTA
Python3使用SMTP发送带附件邮件
2020/06/16 Python
浅谈python下含中文字符串正则表达式的编码问题
2018/12/07 Python
jupyter notebook 多环境conda kernel配置方式
2020/04/10 Python
python Matplotlib数据可视化(2):详解三大容器对象与常用设置
2020/09/30 Python
简单掌握CSS3中resize属性的用法
2016/04/01 HTML / CSS
法国滑雪假期的专家:Ski Planet
2019/11/02 全球购物
在Java开发中如何选择使用哪种集合类
2016/08/09 面试题
校园文化标语
2014/06/18 职场文书
公务员上班玩游戏检讨书
2014/09/17 职场文书
幼儿园安全管理制度
2015/08/05 职场文书
python四个坐标点对图片区域最小外接矩形进行裁剪
2021/06/04 Python
MySQL创建定时任务
2022/01/22 MySQL