IE8中"HTML Parsing Error:Unable to modify the parent container element before the child

 一、

又涨见识了
IE8报下面错误,而且是我的机器不报,同事的机器报,试了4台,两个报,两个不报,IE版本都一样,没想明白
解决:

1、查看是否有未关闭的html标签,比如<table>而没有</table> (我就是这个原因)
2、是否在页面未加载完前js代码操作了body里的元素,将相关js代码移到</body>后面

网页错误详细信息

用户代理: 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

二、

它的发生,是因为某些DOM操作发生在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>

当解析到DIV时就开始在BODY上appendChild,而这个时候BODY是还没有完全就绪的(It is not fully loaded),文档结构仍在loading和interactive状态之间,于是,便会得到上述错误。当然,该错误目前已确切知道的会存在于IE6和 IE7两个版本中(低于IE6的未进行测试),在IE8中将会得到一个HTML解析错误:HTML Parsing Error: Unable to modify the parent container element before the child element is closed (KB927917)

1.要解决这个问题,可以进行document.readyState状态判断,当它为complete时再进行相应的操作,或者给script标签加上defer属性(该属性在IE8中已不获支持)。

2.或者

js中加入了 setTimeout("XXXX()",1000);,使其获得足够的加载时间后执行目标(XXXX)的function,于是问题得到解决

时间: 2024-09-14 23:30:16

IE8中"HTML Parsing Error:Unable to modify the parent container element before the child的相关文章

IE8 中&amp;amp;quot;HTML Parsing Error:Unable to modify the parent container element before th

问题描述 发布后的安装包挂在本地的iis上是ok的.没有任何问题.但是挂在服务器上,会报这样的一个错误"HTMLParsingError:Unabletomodifytheparentcontainerelementbeforethechildelementisclosed"有两个页面会报.但是第一个页面虽然报这样的错误.但是并不影响功能的使用第二个页面报这样的错误之后,功能就没法用了.请问这会是什么原因?本地的浏览器和服务器的浏览器都是ie8 解决方案 解决方案二:有木有人能告诉我啊

IE8 下的Js错误HTML Parsing Error..._javascript技巧

网页错误详细信息 用户代理: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; QQDownload 551; SLCC2; .NET CLR 2.0.50727)时间戳: Wed, 12 Aug 2009 07:02:03 UTC 消息: HTML Parsing Error: Unable to modify the parent container element before the child

解决Fatal error: Unable to read 2147 bytes错误

今天在安装一个网店系统,出现了Fatal error: Unable to read 2147 bytes的错误,如下截图: 经过查找相关的资料,发现原来问题出在上传安装文件的地方.上传文件时,一定要选择"二进制"方式.FTP软件如果不设置为二进制传输,则在某些服务器上可能会导致各种各样的异常的问题,比如:白屏,乱码,异常的报错等等.因此请一定要安装下面的说明设置FTP. 下面整理相关FTP客户端FlashFXP.Filezilla.CuteFTP.LeapFTP等软件的设置方法供您参

我的Android进阶之旅------&amp;gt;解决Error:Unable to find method &#039;org.gradle.api.internal.project.ProjectInternal.g

错误描述 今天在Github上面下载了一份代码,然后导入到Android Studio中直接报了如下图所示的错误: 错误描述如下: Error: Unable to find method 'org.gradle.api.internal.project.ProjectInternal.getPluginManager()Lorg/gradle/api/internal/plugins/PluginManagerInternal;'. Possible causes for this unexp

smarty模板提示Warning: Smarty error: unable to read resource

PHP使用模板引擎smarty,读取模板出错提示:Warning: Smarty error: unable to read resource: "index.html" in libs\Smarty.class.php on line 1095 问题原因:模板目录设置不正确 解决方法: 在出错页面调用echo $Tpl->template_dir; 查看模板对应的位置,在配置文件里修改相应模板正确位置即可. 还有一种可能就蛤我的index.html模板文件不存在也会提示找不到模

IE8中显示“收藏夹栏”为灰色无法点击开启

  浏览器的收藏夹是我们平时用到的最多功能之一,为了更方便的打开收藏夹中的网页,在IE8浏览器下,我们可以在工具栏的空白处单击右键,然后选择"收藏夹栏"即可在工具栏上显示收藏网页.但是在IE8中可能会遇到"收藏夹栏"无法点击勾选的情况,故障如下: 解决方案: 若此问题出现在Win7系统中可通过修改组策略来解决问题. 提示:更改注册表设置有一定危险,可能会造成系统瘫痪,建议在进行操作之前,先对注册表进行备份 按下 Windows + R 键打开"运行&quo

IE8中“收藏夹栏”为灰色的无法点击开启是怎么回事

  我们在使用浏览器的时候,经常会用到收藏栏的功能,它能方便我们快速的打开一些已经收藏过的重要网站,IE8浏览器下,我们可以在工具栏的空白处单击右键,然后选择"收藏夹栏"即可在工具栏上显示收藏网页.但是在IE8中可能会遇到"收藏夹栏"无法点击勾选的情况,如图: 怎么解决这种问题呢?其实,修改一下注册表设置就行了,在"开始"菜单中,选择"运行",输入"regedit"打开注册表,如图: 再打开的注册表编辑器中

configure error:安装php时出现configure: error: Unable to find gd.h anywhere under,错误解决

在进行PHP开发环境源码安装时,在安装PHP-5.2.6是出现:configure: error: Unable to find gd.h anywhere under错误 解决方式: 1.在gd库的安装路径下搜索没有发现gd.h文件,但是在/etc/include下有gd.h文件 2.在网上搜索发现重装gd库可解决 3.重新安装gd库,在安装时出现:   configure.ac:64: error: possibly undefined macro: AM_ICONV  If this to

如何关闭Windows 7下IE8中无用的网页加速器

对Windows 7中捆绑发布的IE8在安全性,以及页面打开速度方面较以前都有不少的提升.此外,IE8也开始允许更多的第三方网页加速器进入.但实际上,这些网页加速器很多时候只是个"噱头",对于页面打开速度等没有太大帮助,甚至出现页面打开速速更慢的相反效果. 在第三方的页面加速器能真正提速前,笔者建议用户使用下面的方法关闭它们. 点击"开始",在"搜索程序和文件"框中输入gpedit.msc,回车后打开组策略编辑器.依次打开"计算机配置→