Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/416.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在不同服务器上托管时刷新iframe_Javascript_Jquery_Html_Iframe - Fatal编程技术网

Javascript 在不同服务器上托管时刷新iframe

Javascript 在不同服务器上托管时刷新iframe,javascript,jquery,html,iframe,Javascript,Jquery,Html,Iframe,我有一个简单的测验,在我客户网站的iframe中。不幸的是,该测验托管在与我的客户站点不同的服务器上。客户端希望iframe的内容在用户提交表单60秒后刷新(很容易完成),但每当我试图让测验刷新自己时,浏览器出于安全原因会阻止它-它们位于不同的域上 我没有试图改变父窗口目标,只是重新加载iframe本身,所以希望安全性不是问题。。。但是我尝试了iframe.contentWindow.history.back()但我仍然收到相同的安全错误: 未捕获的安全性错误:阻止了具有原点的帧 “”访问具有原

我有一个简单的测验,在我客户网站的iframe中。不幸的是,该测验托管在与我的客户站点不同的服务器上。客户端希望iframe的内容在用户提交表单60秒后刷新(很容易完成),但每当我试图让测验刷新自己时,浏览器出于安全原因会阻止它-它们位于不同的域上

我没有试图改变父窗口目标,只是重新加载iframe本身,所以希望安全性不是问题。。。但是我尝试了
iframe.contentWindow.history.back()但我仍然收到相同的安全错误:

未捕获的安全性错误:阻止了具有原点的帧 “”访问具有原点的帧 "". 协议、域和端口必须 匹配


如何使iframe刷新自身?这可能吗?或者浏览器认为iFrAMEs是父页面所拥有的,所以我甚至不刷新它吗?谢谢。

您只能使用消息发布来解决问题,所有浏览器都有理由阻止直接操作

在主页中:

var frame = document.getElementById('your-frame-id');

frame.contentWindow.postMessage("reload please, thank you", '*');
window.addEventListener('message', function(event) {
  if (event.data === "reload please, thank you") {
      location.reload();
    }
});
在您的中(包含在主页中):