JavaScript中常见的一些兼容性问题,面试必备

 时间:2026-02-14 12:01:40

1、1. 事件绑定

兼容写法:

小结:

addEventListener() 兼容:firefox、chrome、safari、opera、IE9+;

attachEvent() 兼容:IE7,8 。

JavaScript中常见的一些兼容性问题,面试必备

2、2. event事件对象

兼容写法:

小结:

e 兼容火狐浏览器,window.event 兼容非火狐。

JavaScript中常见的一些兼容性问题,面试必备

3、3. 获取 scrollTop

兼容写法:

小结:

document.documentElement.scrollTop 兼容非 chrome;

document.body.scrollTop 兼容 chrome。

JavaScript中常见的一些兼容性问题,面试必备

4、4. 阻止浏览器默认事件

兼容写法:

小结:

eventPreventDefault() 不兼容 IE6-8;

event.returnValue = false; 兼容IE。

JavaScript中常见的一些兼容性问题,面试必备

5、5. 阻止冒泡

兼容写法:

小结:

event.stopPropagation() 不兼容 IE6-8;

event.cancleBubble = true 兼容IE。

JavaScript中常见的一些兼容性问题,面试必备

6、6. 滚轮

兼容写法:

小结:

obj.addEventListener('DOMMouseScroll',wheel,false); 兼容火狐;

obj.onmousewheel = wheel; 非火狐。

JavaScript中常见的一些兼容性问题,面试必备

7、7. 获取className

兼容写法:

补充,对于为何要加上 reg.lastIndex = 0; (13行下面那一句代码),原因如下:

若不加这句代码,有连续的两个类名匹配时,只会匹配第一个,则第二个不会。

究起原因就是 RegExp 对象的 lastIndex 属性:该属性存放一个整数,它声明的是上一次匹配文本之后的第一个字符的位置。

若使用了‘g’全局修饰符,在执行了 test 方法后,lastIndex 就会将匹配到的字符串的位置记录下来作为下一次匹配的起始位置。

若是下一次匹配没有成功,则 lastIndex 置为 0。

若不加'g'全局修饰符,则可以把这句代码省略掉。请点击查看demo

小结:IE浏览器不支持 getElementsByClassName() 所以只能自己写一个方法来获取 class;

JavaScript中常见的一些兼容性问题,面试必备

  • calibre通用选项怎么设置保留空格
  • 如何删除空白页wps最后一页
  • wps怎样删除空白页 WPS文档的空白页如何删除
  • Ubuntu(Linux)系统WPS文字不能输入中文如何解决
  • wps最后空白页怎么删除不掉
  • 热门搜索
    关于病毒的手抄报简单又漂亮 关于心理的手抄报 五年级手抄报图片大全 缅怀先烈的手抄报图片 心理健康手抄报花边 我也追星手抄报 安全饮食手抄报 手抄报教师节 中秋节手抄报。 低碳生活手抄报内容