如何复制:
确保remysharp.com/2009/01/07/html5-enabling-script/添加了
<section id='anything'></section>标记.$('#anything').append('<section id="whatever"></section>');到目前为止,所有的浏览器都能正常工作。$('#whatever').append('<section id="fail"></section>');这里是IE6/7失败的地方。火狐/Safari将继续工作。错误

思考
<section>改为<div>时,IE6/7将开始工作。document.createElement()并创建我的新元素,它可以工作,但似乎jQuery的append()与html5元素有问题。发布于 2009-10-20 13:19:36
这个bug在IE的innerHTML实现中--由于某些原因,它不喜欢通过innerHTML插入的“未知”元素,而DOM脚本则很好。
jQuery使用创建一个持久化div,然后删除要通过innerHTML附加的标记。IE现在将未知元素看作是两个新的破碎元素,即<article>content</article>被看作是ARTICLE,#text,/ARTICLE,由innerHTML borking引起的。
下面是一个示例,在IE中查看它,您将看到innerHTML插入方法错误地报告了在div:http://jsbin.com/olizu中插入的3个节点
那些没有IE的人的截图:http://leftlogic.litmusapp.com/pub/2c3ea3e
发布于 2010-04-04 21:57:21
我也遇到过这个问题。解决方案似乎是在已经附加到文档的元素上使用innerHTML,然后提取创建的节点。我创建了这个li'l函数来实现这个功能:
http://jdbartlett.github.com/innershiv/
发布于 2009-07-28 17:45:19
大伙儿,把你们的挖苦记在那里。通过查看http://html5shiv.googlecode.com/svn/trunk/html5.js,html5 shiv成功地欺骗了IE6/7来执行createElement()。
在上面的karbassi的例子中,人们希望IE6/7会首先关注html5 shiv,然后按照预期的方式执行jQuery追加()。显然,在附加到附件时,它不会按照这个顺序进行操作。这是很方便知道的。
https://stackoverflow.com/questions/1191164
复制相似问题