我提到了其他类似的讨论。这是该讨论的链接。
外部 HTML 工作正常。但我的要求是内部 HTML。不使用外部 HTML 的原因是我使用的是 AngularJS,它对 HTML 本身有条件。所以我需要将内容添加到innerHTML。
这是HTML。
<p ng-show="preview=='text' && !file.showUploadPanel && file.fileContent!='null' && file.fileContent!='undefined'" ng-bind-html-unsafe="file.fileContent" class="pre fileContent"></p>
这是支持它的JS。
var elem = $(".pre.fileContent")[1];
if (elem.tagName == "P" && "innerHTML" in elem){
elem.innerHTML = "<pre>" + elem.innerHTML + "</pre>";
}
我也尝试用"<pre>" + elem.innerHTML + "</pre>"
范围变量替换导致"<pre>" + $scope.file.fileContent + "</pre>";
这是我在 IE8 上遇到的错误。
Error: Unknown runtime errorundefined
如果我<pre>
从elem.innerHTML
错误中删除,则不会发生。此外,对于 outerHTML,不会出现此错误。
我应该如何解决这个问题?