更新:此问题应该已关闭,因为问题是由于我自己的编码错误而且没有用处。
当有一个领先的空白和一个锚标记时,我遇到了IE8和jQuery.html()的问题。要重现此问题,请转到此处:
http://jquery.com/
现在将其输入IE8开发者控制台:
$('body').html(' test<a href="">foo<a>');
您会注意到屏幕上没有任何内容。在控制台中输入此内容将确认正文的内容为空:
$('body').html();
如果我使用本机innerHTML,则不会发生此问题。 jQuery绕过IE8的原生innerHTML,而是使用jQuery.append(),因为IE8会剥离前导空格。
任何人都知道为什么会这样吗?这是一个已知的错误吗?
答案 0 :(得分:3)
您的标记无效,如果您将其关闭则有效,
$('body').html(' test<a href="">foo</a>');
我不知道jQuery在这里应该如何处理无效标记,所以它可能仍然是一个bug。