我尝试运行一行代码如下:
的document.getElementById( '帧0')contentDocument.location.reload(真)。强制iframe刷新或重新加载,但我得到了像firefox中的“权限被拒绝”的错误。有谁知道为什么?并帮助提供解决方案?谢谢!
答案 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}}与当前位置不同。