在javascript中刷新iframe

时间:2010-06-23 08:29:22

标签: javascript iframe

我尝试运行一行代码如下:

的document.getElementById( '帧0')contentDocument.location.reload(真)。强制iframe刷新或重新加载,但我得到了像firefox中的“权限被拒绝”的错误。有谁知道为什么?并帮助提供解决方案?谢谢!

2 个答案:

答案 0 :(得分:1)

这可能是因为跨网域问题 - 看起来你的iframe内容来自另一个域作为你的主机(从中运行你的js代码)。 FF对跨域的限制非常严格。

答案 1 :(得分:0)

由于适用于所有浏览器的Same origin policy,您无法重新加载来自其他主机名的文档。

您必须从页面中删除iframe并将其替换为新的iframe:

var iframe= document.getElementById('frame0');
var newiframe= document.createElement('iframe');
newiframe.src= iframe.src;
iframe.parentNode.replaceChild(newiframe, iframe);

但是,这会加载src的原始<iframe>,如果用户之后导航了该页面,则该{{1}}与当前位置不同。