用于在 ie8 上兼容原生 js 各种新特性,引入它就无须修改现有 js 代码。 项目地址

特性

  1. 解决 ie8 在非调试模式下,调用 console 相关方法的出错情况
  2. 数组类型的变量支持 indexOf 方法
  3. 支持 forEach 方法遍历对象
  4. 可在页面中直接通过 HTMLElement,HTMLDocument 等扩展原型链
  5. 所有 dom 对象可通过 addEventListener 绑定事件
    this 指向绑定控件本身
    事件触发顺序和现代浏览器保持一次
    实现监听表单元素的 oninput 事件,并支持冒泡,可以在 window/document 等上层对象中进行事件托管
    实现监听 blur 事件,并支持冒泡,可以在 window/document 等上层对象中进行事件托管
    实现监听 focus 事件,并支持冒泡,可以在 window/document 等上层对象中进行事件托管
    实现 Event 对象的 stopPropagation,preventDefault 方法
  6. 所有 dom 对象可通过 removeEventListener 解绑事件(目前版本的解绑不彻底,特殊情况会有问题,待解决)
  7. 实现 getComputedStyle 方法,并支持通过 getPropertyValue 获取样式值
  8. 修复 getBoundingClientRect 方法可能出现返回值不准的情况
    返回结果增加属性.heght .width 同现代浏览器保持一致
  9. 实现 Element 元素的 hasOwnProperty 方法

使用

1
2
3
4
5
6
<!--必须在head标签中引入,以保证该插件最优先运行-->
<head>
<!--[if IE 8]>
<script src="https://cdn.jsdelivr.net/gh/aweiu/JsLibs/libs/js/fixJsForIE8.js"></script>
<![endif]-->
</head>

 评论