JS代码兼容所有浏览器但IE10/IE11无法运行,如何修复?
IE10/IE11代码失效修复方案
问题根因
你遇到的问题确实是反引号语法导致的:反引号是ES6推出的模板字符串语法,IE10、IE11全版本均不支持任何ES6语法,代码运行时会直接抛出语法错误,导致整段逻辑失效。
修复方案
方案1:直接替换为ES5字符串拼接(适合仅少量模板字符串的场景)
将原代码中的模板字符串写法改为普通字符串拼接即可,修改后代码如下:
$('#' + formID + ' textarea:not(.ctype)').each(function(k) {
修改后所有主流浏览器和IE10/IE11均可正常识别运行。
方案2:全量编译ES6语法(适合项目存在大量ES6写法的场景)
如果项目中还有箭头函数、let/const声明、解构赋值等其他ES6语法,可接入babel编译工具,将项目所有JS代码统一转译为ES5语法,一次性完成IE系列浏览器适配。
内容的提问来源于stack exchange,提问作者Notion
相关产品推荐
相关产品推荐

