IE8-下无法识别后续以innerHTML方式添加的自定义标签

本文探讨了在IE8及以下版本中使用自定义HTML标签的问题,特别是通过innerHTML方式添加自定义标签时存在的限制,并提供了使用createElement和appendChild方法作为替代方案的有效实践。

例如要创建一个自定义标签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>



转载于:https://www.cnblogs.com/ecma/archive/2012/02/01/2335047.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值