如何在IE上修复innerHTML而不是使用HTML5 doctype渲染实体?

时间:2010-08-31 17:12:57

标签: javascript html html5

我观察到当使用HTML5 doctype(<!DOCTYPE html>)时,将包含HTML实体的字符串分配给DOM对象的innerHTML不会在IE8(以及可能的其他IE版本)上转换/呈现这些实体。

document.getElementById('some-div').innerHTML = 'Doesn&apos;t work.';

有人有解决方案吗?我遇到过这个:http://ajaxian.com/archives/innershiv-make-innerhtml-html5-work-in-ie,但它没有解决这个问题。我上面给出的例子是一个已经在DOM上的元素。

1 个答案:

答案 0 :(得分:3)

它是&apos;(即使使用HTML4.01 DOCTYPE它也不起作用)。 其他HTML实体(如&copy; &amp;等)可以完美地运行IE7和IE8。

&apos;在IE中不起作用(这不是因为HTML5 DOCTYPE,它与其他DOCTYPE相同)。 另外here他们说它不起作用,使用&#39;作为撇号