用户工具

站点工具


frontend:ie8

这是本文档旧的修订版!


IE8 Compatible

Polyfill

code snippet:

<!--[if lt IE 9]>
<script src="/js/console-polyfill.min.js"></script>
<script src="/js/html5shiv.min.js"></script>
<script src="/js/respond.min.js"></script>
<script src="/js/es5-shim.min.js"></script>
<script src="/js/es5-sham.min.js"></script>
<script src="/js/json3.min.js"></script>
<![endif]-->

Babel preset

如果使用babel进行代码转换,需要引入以下两个babel plugin转换IE8不支持的保留字 default

uglify-js

使用uglify-js时,务必记得启用 –screw-ie8=false or –support-ie8 选项

UglifyJS2 2.7以上版本已经默认不再支持IE8了,因此需要启用 support-ie8 选项。

By default UglifyJS will not try to be IE-proof

影响范围最广的大概是 jQuery 了,因为默认不再支持IE8会使 jQuery 中的propFix失效,当然这个问题仅在自己uglify jQuery出现,继续用 jQuery.min.js 应该是没有问题的。

webpack解决方法:

new webpack.optimize.UglifyJsPlugin({
  compress: {
    warnings: false,
    screw_ie8: false
  },
  mangle: { screw_ie8: false },
  output: { screw_ie8: false }
})
frontend/ie8.1486113957.txt.gz · 最后更改: 2023/12/03 10:24 (外部编辑)