addEventListener兼容各大浏览器封装

封装:addEvent.js

/**
* element           要绑定事件的对象,及HTML节点。
* type              事件名称,attachEvent监听的事件前边的加上“on”,比如“onclick”和“onmouseover”,addEventListener与之相反。
* listener          要绑定的事件监听函数
*/const addEvent = function({element, type, callback}) {if (element.addEventListener) { // 支持使用 addEventListener()if (type.slice(0,2) === "on") // 以 "on" 开头,不需要,则去掉type = type.slice(2);element.addEventListener(type, callback);} else if (element.attachEvent) { // 支持使用 attachEvent()if (type.slice(0, 2) !== "on") // 没有以 "on" 开头,需要,则加上type = "on" + type;element.attachEvent(type, callback);}else{type.slice(0, 2) !== "on" ? element['on'+ type] = callback : element[type] = callback;}
}
export default addEvent;

其他js引入

import addEvent from "@/public/js/addEvent"
addEvent({element: window, type: 'scroll', callback: debounce(buriedPoint, 1000)  // or buriedPoint}); //滚动事件

addEvent完美封装(addEventListener兼容性封装)相关推荐

  1. IRFR3704Z替代兼容型号DC005NG-I,完美替换IRFR3704Z,封装TO-252

    IRFR3704Z替代兼容型号DC005NG-I,完美替换IRFR3704Z,封装TO-252 型号:DC005NG-I N管 电压电流:30V90A 内阻:RDS(ON)<4.5mΩ@VGS= ...

  2. js 兼容性封装获取第一个子元素,最后一个子元素,下一个兄弟元素,上一个兄弟元素

    高级浏览器: chrome firefox ie9及以上符合web标准浏览器. 低版本浏览器: ie6,ie7,ie8. 节点和元素的适用范围:以firstChild和firstElementChil ...

  3. 【关于封装的那些事】 缺失封装 【关于封装的那些事】 泄露的封装 【关于封装的那些事】 不充分的封装 【图解数据结构】二叉查找树 【图解数据结构】 二叉树遍历...

    [关于封装的那些事] 缺失封装 目录 - 缺失封装 为什么不能缺失封装? 缺失封装潜在的原因 未意识到关注点会不断变化 混合关注点 幼稚的设计决策 示例分析一 示例分析二 总结 缺失封装 没有将实现变 ...

  4. EEP封装?METS封装?还是ZIP封装?

    档案信息化行业的老兵想必对10多年前的EEP封装包印象深刻,其自包含.自描述.自证明的"洋葱结构"曾经火遍大江南北,为电子文件的真实性和完整性保证提供了一种重要手段,但其过分严谨刻 ...

  5. Java的知识点31——封装拷贝、封装释放、实现放大器对声音的放大功能

    封装拷贝.封装释放 package cn.dym;import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; ...

  6. 网络编程 数据的封装与解封装过程

    文章目录 数据封装过程 数据解封装过程 数据封装过程 数据解封装过程 参考文章:封装与解封装

  7. ec200s 封装_什么是无闪退免签封装?免签封装如何实现?

    因为ios签名是内测分发必须进行的一项操作, 相信ios开发者们对ios签名还是非常熟悉的,ios系统中App是可以通过ios签名的方式将未上架苹果应用商店App安装到苹果手机上:那么未开发App的网 ...

  8. 理解OSI七层模型(了解OSI七层模型,数据如何传输,封装,解封装)

    文章目录 理解OSI七层模型 什么是OSI七层模型 理解OSI七层模型 举例子 七层协议,分析过程: 数据传输过程 封装数据 解封装数据 数据是如何封装和解封装 理解OSI七层模型 第一层:物理层. ...

  9. TCP/IP五层模型(五层因特网协议栈)||| OSI参考模型|||数据的封装与解封装

    目录 一.TCP/IP五层模型: 网络设备分布: 数据的封装与解封装: 二.OSI参考模型 区别与联系: 注: ICMP中echol作用: 怎么区分TCP连接: 详解: (33条消息) TCP/IP五 ...

最新文章

  1. redis开启远程连接
  2. 023 判断出栈顺序是否正确
  3. 微生物样本取样及微生物基因组DNA提取建议
  4. 出现次数超过一半的数字
  5. 常见的计算机监控系统分类,第二章 发厂计算机监控系统的基本分类.doc
  6. leetcode47. 全排列 II
  7. anglar ajax执行2次的原因,AngularJS与Ajax表单提交需要单击两次
  8. bzoj 3403: [Usaco2009 Open]Cow Line 直线上的牛
  9. Android修行手册 -初识Chip
  10. 区块链+区域性股权市场:背景、思路与模式探索
  11. 时间状语:(现在完成时)/ 固定语句(现在完成时)/29主动表被动/23过去完成时:又 名 过去的过去;/过去将来时/(过去完成时)/25 过去完成时,固定搭配/26 时间状语 (将来完成时)
  12. 台式计算机能不能安装蓝牙驱动,台式电脑蓝牙驱动安装失败怎么办?台式电脑蓝牙驱动安装失败解决办法...
  13. python上楼梯问题_python解决上楼梯问题
  14. 动图怎么裁剪边框?三步教你在线裁剪gif
  15. 计算机网络 - (三)电脑如何获取到IP的
  16. WRT之Crosswalk简介
  17. 如何删除计算机桌面多余的大e,教你删除属性里桌面多余背景图片
  18. 吉林警察学院计算机录取分,2017年吉林警察学院录取分数线
  19. 声呐学习笔记之波束成形
  20. IDEA(IntelliJ IDEA)

热门文章

  1. 027 Rust死灵书之Vec内存分配
  2. LightOJ1079---Just another Robbery (概率牌01背包问题)
  3. 【云原生 · Kubernetes】Kubernetes基础环境搭建
  4. 3166: [Heoi2013]Alo
  5. 揭秘AAA企业信用等级证书的权威性
  6. GiantPandaCV 2021年度总结
  7. 世界最大的两个BT网站被迫下线 ExtraTorrent遭遇DDoS攻击
  8. 3B再战:360又一次挟持了用户
  9. 群消息已读回执(这个屌),究竟是推还是拉?
  10. 漏洞复现_CVE-2020-0796 永恒之黑漏洞_遇坑_已解决