javascript - 我可以使用来自 JavaScript 的内容预填充 iframe 吗?

标签 javascript jquery html iframe

我有一个 JavaScript 函数,它结合了 AJAX 和字符串操作来生成一个完整的 HTML 页面作为一个字符串。即:

var markup='<html><body>Hello world!</body></html>';

这非常简单,我不能保证 HTML 结构是可预测的。如何在页面上显示该内容?我认为 iframe 最有意义,因为字符串包含完整的 HTML 页面,但我不知道如何将标记注入(inject) iframe。

我不想创建另一个仅用作“代理”的物理文件,因此我希望有一个可以完全包含在一个 HTML 页面中的解决方案。

最佳答案

var iframe = document.createElement("iframe");
var doc = iframe.contentDocument; // a about:blank
doc.open();
doc.write(htmlstring);
doc.close();

对我有用。我也确实使用了 <object>在他们的 data 中有一个数据 URI属性,例如显示 xml 文档:

var object = document.createElement("object");
object.setAttribute('data', "data:text/xml, "+xmlstring);

您也可以使用 <object data="about:blank">而不是 iframe 来获取要覆盖的 contentDocument。

关于javascript - 我可以使用来自 JavaScript 的内容预填充 iframe 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10195193/

相关文章:

javascript - 从android webview调用javascript函数?

javascript - 将 props 传递到 React 组件

javascript - 从未知数量的多个数组创建一个列表

javascript - 我有一个 jQuery 代码,其中不透明度随着光标下降而上升。我该如何扭转它?

html - 基本 HTML - 子文件夹的相对路径(使用目录名称)在桌面上是否有效?

javascript - Fullcalendar - 我们可以将自定义数据添加到我们的事件 Json 数据中吗?

javascript - puppeteer/chromium 由于内存不足导致服务器崩溃

jquery - 在不影响top div的情况下创建overlay div

jquery - knockout 中的复选框绑定(bind)不适用于触发事件

jquery - 更改焦点上的 CSS 属性