例如要创建一个自定义标签thetag,事先已document.createElement('thetag'),但后续通过innerHTML的方式添加的该元素,IE8-是不认的。。
createElement + appendChild 则可以。其他浏览器各种方式均OK。
<script>document.createElement('thetag');</script>
<thetag id="test1"></thetag>
<script type='text/javascript'>
window.onload=function(){
var div = document.createElement('thetag');
div.id = 'test2';
document.body.appendChild(div);
var html = '<thetag id="test3"></thetag>',
div = document.createElement('div');
div.innerHTML = html;
document.body.appendChild(div);
alert(document.getElementById('test1').id + ' in page');
alert(document.getElementById('test2').id + ' create-append');
alert(document.getElementById('test3').id + ' use innerHTML'); //cause an error in IE8-
}
</script>
本文探讨了在IE8及以下版本中使用自定义HTML标签的问题,特别是通过innerHTML方式添加自定义标签时存在的限制,并提供了使用createElement和appendChild方法作为替代方案的有效实践。

860

被折叠的 条评论
为什么被折叠?



