能否通过chrome插件来实现对ie7的document.createElement()的兼容?

crf_moonlight
  • 27

想在比较新的浏览器里面打开老网站,打不开的主要原因是有这样的代码

document.createElement('<div class="class"></div>');

更甚还有这样的

document.createElement('<div class="class"><div><div></div></div></div>');

实现兼容性替换一下document.createElement()也能做到

怎么能确保这个替换生效?

回复
阅读 1.4k
1 个回答
yuanxiaowa
  • 10.1k

重写document.createElement,然后自己解析,不太建议这样做

var original_fn = document.createElement
document.createElement = function(name) {
    if (/^\w+$/.test(name)) {
        return original_fn.call(document, name)
    }
    // 此处解析
    var div = original_fn.call(document, 'div')
    div.innerHTML = name
    return div.firstChild
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏