浏览器应该不断刷新iframe - 无法正常工作

时间:2015-09-21 07:53:46

标签: javascript iframe

我有一个显示网络状态的页面。 1分钟左右后,它自我清爽。但是当它无法加载页面时,它只是显示空白页面,即使它可以加载页面也会停留在那里。

要解决此问题,我已将此网络状态页面(status.php)放在iframe中,并且父网页(index.html)应在1-2分钟后继续在iframe中重新加载网络状态页面。

我写了这段代码:

<!DOCTTYPE html>
<head>

<script>

console.log("Running window.log");
window.setInterval(function(){
reloadIFrame();
}, 10000);

function reloadIFrame() {
console.log("reloaded the frame");
 window.frames[0].location.reload();
}

</script>
</head>

<body>
<iframe  frameborder=0 name="frame11" width="100%" height="100%" src="status.php">
</iframe>

现在,当我禁用网络连接时,Chrome页面(index.html)显示为空白:“Internet连接已丢失。”在控制台中显示消息:

  

Uncaught SecurityError:阻止具有原点的帧   “http://upordown.example.com”访问具有原点的框架   “空值”。请求访问的帧具有协议“http”,即   被访问的帧具有“数据”协议。协议必须匹配。

如何解决这个问题?该父页面应该继续加载子帧,并且无论是否存在网络连接,至少父帧都应该起作用。

1 个答案:

答案 0 :(得分:0)

此代码已成功:

window.setInterval(function(){
reloadIFrame();
}, 90000);

function reloadIFrame() {

var url = "status.php"+"?rand="+new Date().getTime();

$.get( url, function( data ) {
  $( "#frame1" ).html( data );
  $("#frame1").contents().find('html').html(data);

});
}