各瀏覽器中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的發現的。

 

相關:

各瀏覽器中innerHTML實現差異(1)

IE6/7/8/9中使用innerHTML清空元素,其子元素也被清空


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM