1.给对象绑定事件
var t = document.getElementById("tab1");
t.onclick = function tst(){
alert('');
}

2.绑定事件监听函数addEventListener() 或 attachEvent() 
addEventListener()函数语法:
elementObject.addEventListener(eventName,handle,useCapture);

参数 说明
elementObject DOM对象(即DOM元素)。
eventName 事件名称。注意,这里的事件名称没有“ on ”,如鼠标单击事件 click ,鼠标双击事件 doubleclick ,鼠标移入事件 mouseover,鼠标移出事件 mouseout 等。
handle 事件句柄函数,即用来处理事件的函数。
useCapture Boolean类型,是否使用捕获,一般用false 。这里涉及到JavaScript事件流的概念,后续章节将会详细讲解。

attachEvent()函数语法:
elementObject.attachEvent(eventName,handle);

参数 说明
elementObject DOM对象(即DOM元素)。
eventName 事件名称。注意,与addEventListener()不同,这里的事件名称有“ on ”,如鼠标单击事件 onclick ,鼠标双击事件 ondoubleclick ,鼠标移入事件 onmouseover,鼠标移出事件 onmouseout 等。
handle 事件句柄函数,即用来处理事件的函数。

注意:事件句柄函数是指“ 函数名 ”,不能带小括号。

addEventListener()是标准的绑定事件监听函数的方法,是W3C所支持的,Chrome、FireFox、Opera、Safari、IE9.0及其以上版本都支持该函数;但是,IE8.0及其以下版本不支持该方法,它使用attachEvent()来绑定事件监听函数。所以,这种绑定事件的方法必须要处理浏览器兼容问题。

下面绑定事件的代码,进行了兼容性处理,能够被所有浏览器支持:

function addEvent(obj,type,handle){try{  // Chrome、FireFox、Opera、Safari、IE9.0及其以上版本obj.addEventListener(type,handle,false);}catch(e){try{  // IE8.0及其以下版本obj.attachEvent('on' + type,handle);}catch(e){  // 早期浏览器obj['on' + type] = handle;}}
}
<span style="color: rgb(178, 34, 34); font-family: 'Microsoft Yahei', Arial, Helvetica, sans-serif; font-size: 14px; line-height: 22.4px; background-color: rgb(252, 252, 252);">这里使用 try{ ... } catch(e){ ... } 代替 if ... else... 语句,避免浏览器出现错误提示。</span>

例如,为一个 id="demo" 的按钮绑定事件,鼠标单击时弹出警告框:

addEvent(document.getElementById("demo"),"click",myAlert);
function myAlert(){alert("又是一个警告框");
}

转自:http://www.itxueyuan.org/view/6338.html

js动态绑定事件方法相关推荐

  1. 2种js动态绑定事件方法

    1.使用原生JS动态为动态创建的对象绑定事件 1-1.创建一个function,用来兼容IE8以下浏览器添加事件 function addEvent( el, type, fun) { if ( el ...

  2. jQuery动态绑定事件或者原生js动态绑定事件

    说一个这周写前后端交互时遇到的一个印象深刻的问题--动态绑定事件. 一.jQuery 一般我们给节点绑定事件使用的都是这样的形式 $("#btns").click(function ...

  3. VUE v-for中 动态绑定事件方法

    今天做了一个菜单权限的功能,需要根据后台返回的菜单内容在前台用VUE展示,并且点击不同菜单按钮可以进入到不同的页面,所以这里要动态绑定不同的事件方法 一开始尝试过在v-on:click里直接写方法名的 ...

  4. js 动态绑定事件 on click 完美解决绑定不成功

    动态绑定坑了多少人..... //绑定   $("ol").on("click","li a",function(){ ...   }) / ...

  5. 浅谈js与jq给新增元素动态绑定事件(事件委托)

    正确效果: 先看结构 HTML <div class="box-head"><ul class="tab"><li class=& ...

  6. html 页面自动滚动,js监听html页面的上下滚动事件方法

    最近在一个项目中,在写前端页面的时候,想像以前做Android时在页面时刻监听上下滚动的事件,查找资料发现由鼠标或类似用户动作触发的事件有以下图示: 不多说了,直接上代码了,经过测试可以使用: Dom ...

  7. html 点击事件阻止冒泡,js阻止事件冒泡的两种方法

    本篇文章给大家分享的内容是关于js阻止事件冒泡的两种方法 ,有需要的朋友可以参考一下 一.冒泡事件简介 当我们点击一个控件的时候,如果包括这个控件的父控件也有click事件,则会继续执行. 方法一:e ...

  8. js在控件原有的事件方法中加入自己的方法

    有没有碰到过这样的情况,在一个别人的页面上,你想为某个按钮加入自己的控制逻辑,满足条件的情况下才执行原有的事件方法呢? 这个时候在不能修改其原有方法的情况下,先获取控件的事件方法,并将其包装到自己的控 ...

  9. Vue和Js的阻止事件冒泡和阻止默认事件方法

    原生js取消事件冒泡 try{e.stopPropagation();//非IE浏览器}catch(e){window.event.cancelBubble = true;//IE浏览器} 原生js阻 ...

最新文章

  1. Android 线程死锁的案例
  2. Python分式计算
  3. python无法打开文档_win32com Excel。应用程序无法打开任何文档
  4. linux关于界面的API,linux系统基础知识(ABI和API)
  5. 算法—2,记一个自己的算法题 计算数字k在0到n中的出现的次数,k可能是0~9的一个值
  6. Python数据分析实战基础 | 初识Pandas
  7. git 取消 所有暂存_Git版本管理完全指南—学好Git一文足矣
  8. python怎么查看安装了哪些库_如何查看Python 安装位置以及已经安装的库
  9. VGG16 、VGG19 、ResNet50 、Inception V3 、Xception介绍
  10. python定义16进制数组,十六进制字符串到python中的字节数组
  11. 六石管理学:切勿通过扯皮折腾别人,一句你不要管了即可
  12. ASCII 码对照表
  13. token什么意思中文在C语言中,token什么意思(token里面包含什么信息)
  14. npm i 命令安装失败提示:npm WARN read-shrinkwrap,解决方法
  15. 连接服务器没有发挥作用,iPhone“连到系统上的设备没有发挥作用”原因分析及解决方法...
  16. LetAllLinesOfCodeSpeak_杂记
  17. 微信公众平台卡券API接口开发指南
  18. 人工智能+名片,我们看到了营销圈中的“阿尔法
  19. Python全栈+人工智能学习路线
  20. ​用寄存器HAL库完成LED流水灯程序

热门文章

  1. 将String转化为数组
  2. 有哪些期货交易理念(期货交易的概念及主要特征)
  3. 尚未调用 CoInitialize 问题解决
  4. ECC算法推荐参数(256k1和256r1)
  5. 工频信号如何干扰脑电信号
  6. 自媒体怎么赚钱,2级企鹅号自媒体怎么过3级开通原创
  7. Linux数据库12154错误,ORA-12154 和 TNS-03505 监听错误的解决方法
  8. 20190920腾讯
  9. Windows 11下安装 nginx
  10. nodeJs对DICOM医学影像文件解析并保存为图片