各浏览器中innerHTML实现差异(2)
如下代码
<p id="tit"></p>
<script>
var p = document.getElementById('tit');
var div = document.createElement('div');
p.appendChild(div);
try {
div.innerHTML = "76"
} catch(e) {
//IE<9 ERROR
alert(e)
}
</script>
执行顺序如下
1,获取页面上段落元素P
2,创建一个块级元素div
3,将div添加到段落P上(注:规范指出P不能包含块级元素)
4,给div的innerHTML赋值
结果:
IE6/7/8中抛异常。其它浏览器则不。
和第一篇一样,如果创建的是行内元素,IE6/7/8中则不报错。或者将2,3的顺序对调IE6/7/8也不报错。
这个问题是TX的蔡发现的。
相关:
浙公网安备 33010602011771号