文档章节

HTML Parsing Error KB927917

彭苏云
 彭苏云
发布于 2014/06/10 10:34
字数 274
阅读 448
收藏 2

它的发生,是因为某些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,于是问题得到解决

本文转载自:http://blog.csdn.net/kunga0814/article/details/4926171

共有 人打赏支持
彭苏云
粉丝 42
博文 204
码字总数 54255
作品 0
广州
高级程序员
私信 提问
ibatis3的一个小问题

Exception in thread "main" java.lang.ExceptionInInitializerError at com.ibatis.test.TestMain.main(TestMain.java:23) Caused by: java.lang.RuntimeException: Error occurred. Cause:......

文森特-Lee
2012/02/22
910
1
TOMCAT9 服务器问题

HTML代码 我的表单 u: 超链接 超链接1 servlet代码为 public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.se......

山豆根
2017/05/08
93
0
GraphQuery - 下一代的html/xml解析方式

GraphQuery GraphQuery is a query language and execution engine tied to any backend service. It is . Project Address: GraphQuery Related Projects: GraphQuery-PlayGround : Learn a......

graphquery
2018/10/30
0
0
Redmine 3.2.3 和 3.1.6 发布

Redmine 3.2.3 和 3.1.6 发布了。 Redmine 3.2.3 改进记录: Defect #22808: Malformed SQL query with SQLServer when grouping and sorting by fixed version Defect #22912: Selecting a ......

oschina
2016/06/06
1K
2
total.js 1.9.3 发布,Node.js 的 MVC 框架

total.js 1.9.3 发布,此版本更新内容: 新特性 added: (IMPORTANT) merging supports BLOCKS (.js,.css), e.g. F.merge('merge.js', 'fileA.js#management,common', 'fileB.js#management')......

oschina
2015/11/22
1K
2

没有更多内容

加载失败,请刷新页面

加载更多

node调用dll

先安装python2.7 安装node-gyp cnpm install node-gyp -g 新建一个Electron-vue项目(案例用Electron-vue) vue init simulatedgreg/electron-vue my-project 安装electron-rebuild cnpm ins......

Chason-洪
36分钟前
1
0
eclipse中项目svn转gitLab全过程

在工作中,我们可能会遇到项目从svn迁移到gitLab;此过程我们需要变化版本管理工具,上传代码。本篇博客记录了使用spring tool suit(sts/eclipse)进行项目迁移的全过程。 步骤: (1)端口之...

em_aaron
今天
2
0
scala学习(一)

学习Spark之前需要学习Scala。 参考学习的书籍:快学Scala

柠檬果过
今天
1
0
通俗易懂解释网络工程中的技术,如STP,HSRP等

导读 在面试时,比如被问到HSRP的主备切换时间时多久,STP几个状态的停留时间,自己知道有这些东西,但在工作中不会经常用到,就老是记不住,觉得可能还是自己基础不够牢固,知识掌握不够全面...

问题终结者
昨天
4
0
看了一下Maven的内容

了解了Maven其实是一个跨IDE的标准构建工具,能推广的原因估计是借了仓库的便利。 另一个作用是可以通过Maven的功能在社区版的IDEA去创建Web项目,下次实践看看

max佩恩
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部