JS之注册事件兼容性解决方案

本章介绍注册事件兼容性的解决方案

废话不多说,直接上代码:

javascript 复制代码
	function addEventListener(element, eventName, fn) {
		//判断当前浏览器是否支持 addEventListener 方法
		if (element.addEventListener) {
			element.addEventListener(eventName, fn); // 第三个参数 默认是false
		} else if (element.attachEvent) {
			element.attachEvent('on' + eventName, fn);
		} else {
			// 相当于 element.onclick = fn;
			element['on' + eventName] = fn;
		}
	}

兼容性处理的原则: 首先照顾大多数浏览器,再处理特殊浏览器

感谢大家的阅读,如有不对的地方,可以向我提出,感谢大家!

相关推荐
_菜鸟果果29 分钟前
高德地图 JS API 2.0 在国产 Linux/ARM 电脑上渲染失败 的排查与解决
linux·开发语言·javascript
时间的情敌31 分钟前
《回顾 2018 前端:Vue2 成熟期,Webpack4 发布,PWA 大火》
前端
Java后端的Ai之路1 小时前
前端技术Vue-09-webpack-vuejs-实战
前端·vue.js·webpack
LMT流氓兔1 小时前
第五单元——第4课:给工具参数加校验
java·前端·算法·ai·langchain
涛涛ing1 小时前
React Compiler正式“Rust化”:你项目里的Babel插件,正在被编译进打包器
前端
迷途小羔羊1 小时前
项目概述
java·javascript·后端
迷迭绿1 小时前
Cesium 轨迹回放播放器
前端·javascript·cesium
HolySaga2 小时前
我用 UTS 写了一个三端同构的蓝牙插件(Android / iOS / 鸿蒙 NEXT),把踩过的坑都讲给你听
前端
程序员老赵2 小时前
Docker 部署 XWiki:轻松搭建企业知识库与协作 Wiki
前端·docker·开源
console.log('npc')2 小时前
第 10 章 更多业务模块扩展
前端·人工智能·大模型