iframe 不会停止加载

Posted

技术标签:

【中文标题】iframe 不会停止加载【英文标题】:Iframe doesn't stop to loading 【发布时间】:2013-08-30 07:00:21 【问题描述】:

正如this post 中的回答,我正在尝试设置 iframe 的内容:

document.getElementById("iframe").contentDocument.write("Test123");

问题在于,即使一切似乎都正常(Iframe 显示 Test123),浏览器并没有停止加载。事实上,在 Firefox 的标签中,它写着“正在连接...”,而微调器表明它仍在加载中。

为什么会这样?是否有更好的解决方案来设置 iframe 的内容?

【问题讨论】:

你需要关闭连接:ocument.getElementById("iframe").contentDocument.close(); (我认为这会起作用)。 如果 contentDocument 应该是只读的,你究竟是如何写入内容的? developer.mozilla.org/en-US/docs/Web/API/htmlIFrameElement 也许属性是只读的,但返回的文档是读/写的。哦,我们每天都能学到新东西。 @jeff:谢谢!它有效:),您能否发布一个完整的答案,以便我可以将其验证为解决方案。 @ars256 :我不知道具体原因,但我可以确认它有效。 【参考方案1】:

尝试使用 jQuery,它可能会解决您的问题,而且更简洁:

$("#iframe").contents().find("html").html("Test123")

【讨论】:

【参考方案2】:

你需要关闭 iframe 连接:

document.getElementById("iframe").contentDocument.close();

我认为这会奏效。

【讨论】:

以上是关于iframe 不会停止加载的主要内容,如果未能解决你的问题,请参考以下文章

停止 iframe 重新加载

停止闪烁重新加载 iframe

如何停止在注入时触发加载事件的空 iframe?

当我更改其在 DOM 中的位置时,如何停止 iframe 重新加载?

如何停止框架破坏者?

停止 IE/Edge 窗口大小调整为 iframe 尺寸