Mr *_*ewt 6 html javascript iframe construct-2
我有一串HTML标签,可以随时添加或更改。
"<html><body><script language="javascript" src=""></script></body></html>"
Run Code Online (Sandbox Code Playgroud)
是否可以在运行时将该字符串加载到iframe中,就像它是HTML文件一样?
这是针对构造2的。我有一个对象,可以从url很好地加载HTML,它也可以插入HTML,并运行脚本,但不能按原样。
当然,有几个不同的选择。
通过srcdoc(异步):
iframe.srcdoc = html;
Run Code Online (Sandbox Code Playgroud)
通过数据 URI(异步):
iframe.src = 'data:text/html;charset=utf-8,' + escape(html);
Run Code Online (Sandbox Code Playgroud)
通过document.write(同步,并在非常旧的浏览器中工作):
var idoc = iframe.contentWindow.document;
idoc.write(html);
idoc.close();
Run Code Online (Sandbox Code Playgroud)
你可以这样做
document.getElementById('iframe').src = "data:text/html;charset=utf-8," + escape(html);
Run Code Online (Sandbox Code Playgroud)
请参阅下面的小提琴示例
https://jsfiddle.net/erk1e3fg/