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 相关文章推荐
cssQuery()的下载与使用方法
Jan 12 Javascript
Prototype源码浅析 String部分(三)之HTML字符串处理
Jan 15 Javascript
javascript 树形导航菜单实例代码
Aug 13 Javascript
基于WebUploader的文件上传js插件
Aug 19 Javascript
浅谈javascript中遇到的字符串对象处理
Nov 18 Javascript
Vue动态实现评分效果
May 24 Javascript
JavaScript变量类型以及变量作用域详解
Aug 14 Javascript
原生JS实现 MUI导航栏透明渐变效果
Nov 07 Javascript
基于vue2.x的电商图片放大镜插件的使用
Jan 22 Javascript
js防抖和节流的深入讲解
Dec 06 Javascript
vue实现的网易云音乐在线播放和下载功能案例
Feb 18 Javascript
JS实现无限轮播无倒退效果
Sep 21 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具体实现代码
2010/10/12 PHP
PHP中单引号与双引号的区别分析
2014/08/19 PHP
ThinkPHP 3.2 数据分页代码分享
2014/10/14 PHP
PHP判断表达式中括号是否匹配的简单实例
2016/10/22 PHP
JQuery EasyUI 对话框的使用方法
2010/10/24 Javascript
jquery maxlength使用说明
2011/09/09 Javascript
ASP.NET jQuery 实例4(复制TextBox的文本到本地剪贴板上)
2012/01/13 Javascript
javascript全局变量封装模块实现代码
2012/11/28 Javascript
jQuery当鼠标悬停时放大图片的效果实例
2013/07/03 Javascript
获取数组中最大最小值方法js代码(自写)
2013/08/12 Javascript
jQuery+HTML5实现手机摇一摇换衣特效
2015/06/05 Javascript
实例代码讲解jquery easyui动态tab页
2015/11/17 Javascript
Node.js实现JS文件合并小工具
2016/02/02 Javascript
js闭包用法实例详解
2016/12/13 Javascript
layui中layer前端组件实现图片显示功能的方法分析
2017/10/13 Javascript
javascript实现简单打字游戏
2019/10/29 Javascript
python实现得到一个给定类的虚函数
2014/09/28 Python
利用ctypes提高Python的执行速度
2016/09/09 Python
Python实现图片尺寸缩放脚本
2018/03/10 Python
用Python解决x的n次方问题
2019/02/08 Python
Python实现蒙特卡洛算法小实验过程详解
2019/07/12 Python
python中selenium库的基本使用详解
2020/07/31 Python
Expected conditions模块使用方法汇总代码解析
2020/08/13 Python
python中最小二乘法详细讲解
2021/02/19 Python
html5 canvas绘制放射性渐变色效果
2018/01/04 HTML / CSS
Bjorn Borg官方网上商店:国际运动时尚品牌
2016/08/27 全球购物
加拿大奢华时装品牌:Mackage
2018/01/10 全球购物
美国折扣地毯销售网站:Rugs.com
2020/03/27 全球购物
JAVA语言如何进行异常处理,关键字:throws,throw,try,catch,finally分别代表什么意义?在try块中可以抛出异常吗?
2013/07/02 面试题
教学质量评估实施方案
2014/03/17 职场文书
物业管理专业求职信
2014/06/11 职场文书
销售顾问工作计划书
2014/09/15 职场文书
领导干部四风问题自我剖析材料
2014/09/25 职场文书
圣诞节开幕词
2015/01/29 职场文书
班主任工作经验交流会总结
2015/11/02 职场文书
Win11如何设置右键单击显示所有选项?Win11右键单击显示所有选项设置教程
2022/04/08 数码科技