IE8及更早的版本不支持 addEventListener()函数,因此需要一个标准的函数将这些差异性做封装:

1 function addListener(target, type, handler) {
2     if (target.addEventListener) {
3         target.addEventListener(type, handler, false);
4     } else if (target.attachEvent) {
5         target.attachEvent("on" + type, handler);
6     } else {
7         target["on" + type] = handler;
8     }
9 }

使用 addListener()函数:

1 function doSomeThing() {
2     // 代码
3 }
4 var btn = document.getElementById("action-btn");
5 addListener(btn, "click", doSomeTing);

转载于:https://www.cnblogs.com/eversleeping/p/3149664.html

JS函数addEventListener的浏览器差异性封装相关推荐

  1. js进阶ajax函数封装(匿名函数作为参数传递)(封装函数引入文件的方式非常好用)...

    js进阶ajax函数封装(匿名函数作为参数传递)(封装函数引入文件的方式非常好用) 一.总结 2.匿名函数作为参数传递 二.js进阶ajax函数封装 ajax1.js 1 function ajax( ...

  2. react封装函数_react request.js 函数封装

    1.request.js  函数封装 import { Toast } from 'antd-mobile'; import axios from 'axios'; import store from ...

  3. 保留指定小数位数js函数封装

    保留指定小数位数js函数封装 不用正则保留指定小数位数 函数入参定义, num:需要处理的数据 len:保留小数位数,默认2位 判断类型,统一转字符串处理 空值return 空字符串 numStr.r ...

  4. js快速判断IE浏览器(兼容IE10与IE11)

    原文:js快速判断IE浏览器(兼容IE10与IE11) 在很多时候,我们一般采用navigator.userAgent和正则表达来判断IE浏览器版本,下面介绍用IE浏览器中不同特性来判断IE浏览器 1 ...

  5. api日常总结:前端常用js函数和CSS常用技巧

    我的移动端media html{font-size:10px} @media screen and (min-width:321px) and (max-width:375px){html{font- ...

  6. js使用基础总结(简单封装,事件,foreach 原生js写法)

    1.forEach的灵活使用 [注意]数组专用的-----遍历函数方法相当于for循环 语法结构 arr.forEach(function(obj,index){ obj---数组中的具体数据,可以是 ...

  7. js函数使用详细讲解!

    文章目录 使用函数 定义函数 声明函数 构造函数 函数直接量 定义嵌套函数 调用函数 函数调用 函数的返回值 方法调用 使用call和apply调用 使用new调用 函数参数 形参和实参 获取参数个数 ...

  8. 如何编写高质量的 JS 函数(3) --函数式编程[理论篇]

    本文首发于 vivo互联网技术 微信公众号  链接:https://mp.weixin.qq.com/s/EWSqZuujHIRyx8Eb2SSidQ 作者:杨昆 [编写高质量函数系列]中, < ...

  9. JS面向对象一:MVC的面向对象封装

    JS面向对象一:MVC的面向对象封装 MDNjavascript面向对象 面向对象(Object-Oriented) 面向对象里面向的意思是以...为主,面向对象编程既以对象为主的编程. 面向对象的一 ...

最新文章

  1. github组织存储库使用_为什么我不使用您的GitHub存储库
  2. 滴滴人脸识别申诉照片怎么拍_滴滴司机理发被停账号,平台规则到底如何遵守才能避免踩坑?...
  3. Git Log 用法
  4. 不会还有人不会配置LLDP链路层发现协议吧?
  5. Shiro安全框架入门篇
  6. python时间序列数据分析,Python数据分析之时间序列
  7. 前端学习(572):margin无效情形inline水平元素的margin无效
  8. 算法(11)-leetcode-explore-learn-数据结构-链表的经典问题
  9. linux webservice端口号,解决在Linux环境下访问webservice发送中文乱码问题的方案
  10. Ubuntu下使用cmake结合CmakeLists.txt生成makefile文件并进行编译
  11. 开源jeecms,jeebbs学习笔记4——从jo_user表看持久层设计
  12. 文件磁盘相关函数[22]-文本文件读写-不同数据类型的写入
  13. FPGA厂家谁家强?
  14. Jupyter Notebook代码字体更改
  15. 格兰因果模型可以分析哪些东西_论文实证经验分享|VAR模型实操步骤(上)
  16. 达梦数据库建表语句之create table as select 注意事项
  17. python的常量_python中的常量
  18. 扑克洗牌java_java扑克牌洗牌发牌问题
  19. 手把手教你用Python采集腾讯招聘数据
  20. 2019杭州电子科技大学计算机考研经验——97天一战上岸

热门文章

  1. 机器学习笔记(十六):大规模机器学习
  2. php 异常错误信息用处,关于PHP中异常错误的处理详细介绍
  3. linux依赖包在哪个目录,命令-Linux cmd在jar中搜索类文件,而与jar路径无关
  4. 学习笔记7-C语言-进制转换、原返补、位运算、函数
  5. leetcode1045. 买下所有产品的客户(SQL)
  6. leetcode114. 二叉树展开为链表
  7. Date类的构造方法以及成员方法220
  8. 《游戏编程入门 4th》笔记(2 / 14):监听Windows消息
  9. 《Python Cookbook 3rd》笔记(1.5):实现一个优先级队列
  10. 人工智能工程师需具备的技能_2020年软件测试工程师需要具备的技能--需要学什么--面试题有哪些(灵魂拷问)...