我試圖將HTML片段加載到下面新創建的iframe中。將HTML片段加載到動態創建的iframe中
<!DOCTYPE html>
<html>
<head><title>Test</title></head>
<body>
<script type="text/javascript">
var iframeId = "frame"
+ Math.floor((Math.random() + "") * 1000000000000).toString();
document.write('<iframe height="300"'
+ ' width="300"'
+ ' frameborder="0"'
+ ' scrolling="no"'
+ ' id="' + iframeId + '"'
+ ' name="' + iframeId + '"'
+ ' allowtransparency="true"></iframe>');
var iframe = document.getElementById(iframeId);
var iframeContent = '<!-- --\><script language=\"javascript\"\></script\>';
iframe.contentWindow.document.open();
iframe.contentWindow.document.write(
'<!DOCTYPE html\><html\><head\><title\>Test</title\></head\><body\>'
+ iframeContent
+ '</body\></html\>');
iframe.contentWindow.document.close();
</script>
</body>
</html>
當我在瀏覽器中打開此文檔時,iframe未正確加載。有關可能會導致此問題的任何想法?
如果我設置iFrameContent爲
var iframeContent = '<!-- --\>';
或
var iframeContent = '<script language=\"javascript\"\></script\>';
的頁面似乎正常加載。
iframeContent基本上是第三方HTML代碼片段(使用freemarker js_string轉義),並可能包含HTML註釋。
連接時不需要調用.toString()。 Javascript會自動執行。 – SomeKittens