可能:将我自己的HTML(整个网站)插入到iframe中

时间:2011-09-23 11:50:41

标签: javascript html css iframe

我将所有网站HTML存储在javascript字符串&我想将它放在iframe中。 如何将该HTML字符串放入iframe&让它显示网站?我试过这个.src = HTML_STR; this.innerHTML = HTML_STR;但他们没有显示HTML_STR。

我知道这可能很愚蠢,因为我可以将iframes src设置为网站&以这种方式展示网站。

我这样做的原因是因为它是一个网站更新程序。所以我想得到网站(我正在更新)HTML,将所有带有“可更新”类的元素转换为textareas(这样它们可以更新),然后在iframe中显示HTML。

使用iframe和amp;的另一个原因不只是在div中放入HTML,因为每个网站都导入一个.css样式表&我不希望他们的css文件影响我的更新程序网站css或让我的更新程序.css影响网站HTML外观因此,如果我在iframe中显示网站每个网站css不会相互影响。

例如,如果updater.css具有以下内容,则会影响其他网站html中的所有p元素:

p { background-color: red; width: 50%; }

有没有办法将自己的HTML插入iframe。或者是否有其他方法可以实现我想要做的事情。

2 个答案:

答案 0 :(得分:3)

假设你想从父母那里写iframe,你可以这样做:

var ifrm = document.getElementById('myFrame');
ifrm = (ifrm.contentWindow) ? ifrm.contentWindow : (ifrm.contentDocument.document) ? ifrm.contentDocument.document : ifrm.contentDocument;
ifrm.document.open();
ifrm.document.write('Hello World!');
ifrm.document.close();

这是a working jsFiddle。原始代码取自herehere

答案 1 :(得分:-2)

您可以尝试在iframe中执行document.write(yourHTMLString);

另一种方法是,当单击某个按钮时,您只需使用JavaScript将原始HTML中的textareas替换为可更新元素。

相关问题