全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

js绑定事件和解绑事件

在js中绑定多个事件用到的是两个方法:attachEvent和addEventListener,但是这两个方法又存在差异性

attachEvent方法  只支持IE678,不兼容其他浏览器

addEventListener方法   兼容火狐谷歌,不兼容IE8及以下

addEventListener方法

div.addEventListener('click',fn);

div.addEventListener('click',fn2);
function fn(){ console.log("春雨绵绵"); }

function fn2(){
        console.log("到处潮湿");
      }

attachEvent方法

div.attachEvent('onclick',fn);
div.attachEvent('onclick',fn2);
function fn(){ console.log("春雨绵绵"); }
function fn2(){
        console.log("到处潮湿");
      }

注意点:attachEvent方法绑定的事件是带on的,addEventListener绑定的事件是不带on的

下面我写了一个兼容了IE和火狐谷歌的方法

var div=document.getElementsByTagName("div")[0];
      addEvent('click',div,fn)
      function addEvent(str,ele,fn){
        ele.attachEvent?ele.attachEvent('on'+str,fn):ele.addEventListener(str,fn);
      }
      function fn(){
        console.log("春雨绵绵");
      }

这样就完美的解决了兼容性的问题

有绑定事件的话,那就肯定有解绑事件,但是解绑事件和绑定事件一样,万恶的IE还是会搞特殊化

detachEvent方法  只支持IE678,不兼容其他浏览器

removeEventListener方法   兼容火狐谷歌,不兼容IE8及以下

detachEvent方法写法:

ele.detachEvent("onclick",fn);

removeEventListener的写法:

ele.removeEventListener("click",fn);

下面我写了一个兼容性的方法给大家参考,实现也是很简单

function remove(str,ele,fn){
        ele.detachEvent?ele.detachEvent("on"+str,fn):ele.removeEventListener(str,fn);
      }

注意点:不管是绑定事件attachEvent还是删除事件detachEvent都是要加on的,removeEventListenser和addEventListenser则不需要加on

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持


# js绑定事件的方法  # js解除绑定事件  # JS的事件绑定深入认识  # js事件驱动机制 浏览器兼容处理方法  # 关于JavaScript中事件绑定的方法总结  # js 实现一些跨浏览器的事件方法详解及实例  # 详解javascript事件绑定使用方法  # 兼容浏览器的js事件绑定函数(详解)  # 绑定  # 火狐  # 不兼容  # 写了  # 的是  # 都是  # 那就  # 多个  # 不需要  # 这两个  # 给大家  # 很简单  # 不带  # 解决了  # brush  # class  # pre  # span  # style  # addEventListener 


相关文章: 宝塔建站后网页无法访问如何解决?  可靠的网站设计制作软件,做网站设计需要什么样的电脑配置?  网站建设制作、微信公众号,公明人民医院怎么在网上预约?  ,南京靠谱的征婚网站?  常州企业建站如何选择最佳模板?  广州美橙建站如何快速搭建多端合一网站?  香港服务器租用费用高吗?如何避免常见误区?  已有域名如何免费搭建网站?  七夕网站制作视频,七夕大促活动怎么报名?  如何通过wdcp面板快速创建网站?  建站之星如何通过成品分离优化网站效率?  台州网站建设制作公司,浙江手机无犯罪记录证明怎么开?  如何彻底卸载建站之星软件?  宝塔面板如何快速创建新站点?  建站之星安装后如何配置SEO及设计样式?  智能起名网站制作软件有哪些,制作logo的软件?  个人网站制作流程图片大全,个人网站如何注销?  如何在Mac上搭建Golang开发环境_使用Homebrew安装和管理Go版本  h5网站制作工具有哪些,h5页面制作工具有哪些?  整人网站在线制作软件,整蛊网站退不出去必须要打我是白痴才能出去?  岳西云建站教程与模板下载_一站式快速建站系统操作指南  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  免费公司网站制作软件,如何申请免费主页空间做自己的网站?  建站之星×万网:智能建站系统+自助建站平台一键生成  小捣蛋自助建站系统:数据分析与安全设置双核驱动网站优化  建站主机选哪家性价比最高?  济南网站建设制作公司,室内设计网站一般都有哪些功能?  如何快速上传建站程序避免常见错误?  建站之星如何一键生成手机站?  h5在线制作网站电脑版下载,h5网页制作软件?  昆明高端网站制作公司,昆明公租房申请网上登录入口?  定制建站流程解析:需求评估与SEO优化功能开发指南  专业商城网站制作公司有哪些,pi商城官网是哪个?  云南网站制作公司有哪些,云南最好的招聘网站是哪个?  建站之星安装失败:服务器环境不兼容?  如何快速搭建高效简练网站?  SQL查询语句优化的实用方法总结  北京网站制作网页,网站升级改版需要多久?  实现虚拟支付需哪些建站技术支撑?  深入理解Android中的xmlns:tools属性  如何在云虚拟主机上快速搭建个人网站?  如何选择域名并搭建高效网站?  广州网站制作的公司,现在专门做网站的公司有没有哪几家是比较好的,性价比高,模板也多的?  建站IDE高效指南:快速搭建+SEO优化+自适应模板全解析  建站主机服务器选型指南与性能优化方案解析  如何在Golang中处理模块冲突_解决依赖版本不兼容问题  电影网站制作价格表,那些提供免费电影的网站,他们是怎么盈利的?  html制作网站的步骤有哪些,iapp如何添加网页?  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  存储型VPS适合搭建中小型网站吗? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。