在 Firefox 中使用 javascript 设置 iframe 的内容失败

Posted

技术标签:

【中文标题】在 Firefox 中使用 javascript 设置 iframe 的内容失败【英文标题】:Setting content of iframe using javascript fails in firefox 【发布时间】:2014-09-01 09:54:27 【问题描述】:

我正在尝试使用 javascript 设置 iframe 的内容。

我有 html 字符串。我在写:-

 var iframe = $('iframe')[0],
 content = '<div>test</div>';        
 $(iframe).contents().find('html').html(content);

它在谷歌浏览器中运行良好,但在 Firefox 中显示内容片刻然后消失。 请帮我解决它。

【问题讨论】:

那是我的打字错误。 【参考方案1】:

我遇到了同样的问题。我在 Firefox 中看到了 iframe 的加载功能,但在 chrome 中没有。所以 firefox 在 load 事件时重新加载 iframe。

所以用你现有的代码试试这个:-

   $(iframe).load(function(e)
      $(iframe).contents().find('html').html(content);

    )

【讨论】:

它有效,但是两次编写相同的代码是一种好习惯吗? @DeadlyDemon 那么你应该重构它并将它移动到一个单独的函数中。写function foo() $(iframe).contents().find('html').html(content);:),然后从两个地方调用foo()。为帖子 +1。

以上是关于在 Firefox 中使用 javascript 设置 iframe 的内容失败的主要内容,如果未能解决你的问题,请参考以下文章

使用 Firefox 将 JavaScript 控制台记录到日志文件中

Firefox 的 Javascript 内存分析器

在 Firefox 开发人员工具中查看 JavaScript 堆栈跟踪错误(如在 Chrome 中)

如何在 Firefox 中从 JavaScript 解析 HTML?

如何在 Chrome 或 Firefox 浏览器上运行 javascript

如何使用firefox适用于javascript的debugger命令