这是iframe的标准代码,有没有办法将src URL仅替换为html代码?所以我的问题很简单,我有一个页面,它从mysql加载了一个HTML体,我想把代码呈现在一个框架中,这样它就可以使它独立于页面的睡觉,并在特定的边界内.
<iframe src="http://example.com" name="test" height="120" width="600">You need a Frames Capable browser to view this content.</iframe>
这是iframe的标准代码,有没有办法将src URL仅替换为html代码?所以我的问题很简单,我有一个页面,它从mysql加载了一个HTML体,我想把代码呈现在一个框架中,这样它就可以使它独立于页面的睡觉,并在特定的边界内.
<iframe src="http://example.com" name="test" height="120" width="600">You need a Frames Capable browser to view this content.</iframe>
你可以通过一个数据URL来实现这一点.这将整个文档包含在一个HTML字符串中.例如,以下HTML:
<html><body>foo</body></html>
可以按如下方式编码:
data:text/html;charset=utf-8,%3Chtml%3E%3Cbody%3Efoo%3C/body%3E%3C/html%3E
然后设置为IFRAME的src
属性.Example美元.
编辑:另一种 Select 是使用Javascript执行此操作.这几乎肯定是我会 Select 的技术.您不能保证浏览器会接受多长时间的数据URL.Javascript技术如下所示:
var iframe = document.getElementById('foo'),
iframedoc = iframe.contentDocument || iframe.contentWindow.document;
iframedoc.body.innerHTML = 'Hello world';
Edit 2 (December 2017):使用HTML5的srcdoc属性,就像在Saurabh Chandra Patel的答案中一样,现在谁应该是被接受的答案!如果可以达到detect IE/Edge efficiently,提示是只对它们使用srcdoc-polyfill库,并在所有非IE/Edge浏览器中使用"纯"srcdoc属性(请判断caniuse.com以确保).
<iframe srcdoc="<html><body>Hello, <b>world</b>.</body></html>"></iframe>