editor多功能文本框在有些计算机上不能正常加载,解决方法,本人用的是把js调用方法放到body/body后面)...
IE8 中"HTML Parsing Error:Unable to modify the parent container element before the child element is closed"錯誤
一、
又漲見識了 IE8報下面錯誤,而且是我的機(jī)器不報,同事的機(jī)器報,試了4臺,兩個報,兩個不報,IE版本都一樣,沒想明白 解決:
1、查看是否有未關(guān)閉的html標(biāo)簽,比如<table>而沒有</table> (我就是這個原因) 2、是否在頁面未加載完前js代碼操作了body里的元素,將相關(guān)js代碼移到</body>后面
網(wǎng)頁錯誤詳細(xì)信息
用 戶代理: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0;? SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0) 時間戳: Wed, 14 Apr 2010 08:33:56 UTC
消息: HTML Parsing Error: Unable to modify the parent container element before the child element is closed (KB927917) 行: 0 字符: 0 代碼: 0 URI:?
http://support.microsoft.com/kb/927917
二、
它的發(fā)生,是因為某些DOM操作發(fā)生在DOM樹加載完成之前,比如appendChild
就像下面的代碼:
<html> <head> </head> <body> <div> <script type="text/javascript"> ??? alert(document.readyState); ??? var oDiv = document.createElement("DIV"); ??? oDiv.innerHTML = 'test odiv test odiv'; ??? document.body.appendChild(oDiv); </script> </div> </body> </html>
當(dāng)解析到DIV時就開始在BODY上appendChild,而這個時候BODY是還沒有完全就緒的(It is not fully? loaded),文檔結(jié)構(gòu)仍在loading和interactive狀態(tài)之間,于是,便會得到上述錯誤。當(dāng)然,該錯誤目前已確切知道的會存在于IE6和? IE7兩個版本中(低于IE6的未進(jìn)行測試),在IE8中將會得到一個HTML解析錯誤:HTML Parsing Error: Unable to modify the parent container element before the child element is closed? (KB927917)
1.要解決這個問題,可以進(jìn)行document.readyState狀態(tài)判斷,當(dāng)它為complete時再進(jìn)行相應(yīng)的操作,或者給script標(biāo)簽加上defer屬性(該屬性在IE8中已不獲支持)。
2.或者
js中加入了 setTimeout("XXXX()",1000);,使其獲得足夠的加載時間后執(zhí)行目標(biāo)(XXXX)的function,于是問題得到解決
轉(zhuǎn)載于:https://www.cnblogs.com/mybk2014/p/4629977.html
總結(jié)
以上是生活随笔為你收集整理的editor多功能文本框在有些计算机上不能正常加载,解决方法,本人用的是把js调用方法放到body/body后面)...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: eclipse maven jetty启
- 下一篇: Session的实现与存储