在AJAX中自动刷新iframe

时间:2017-07-10 14:30:07

标签: javascript ajax iframe

我有一个简单的var AWS = require('aws-sdk'); var dynamodb = new AWS.DynamoDB(); 我想每5秒刷新一次,而不是点击某处或做任何事情

iframe

他们希望用户点击某处,我没有。我希望这是一个自动过程。

3 个答案:

答案 0 :(得分:0)

最简单的方法是使用刷新元标记。只需将其添加到my-messages.php ...

的标题部分即可
<meta http-equiv="refresh" content="5" />

或者,将此添加到my-messages.php以便使用Javscript执行相同操作...

<script>
    setTimeout(function() {
        window.location.reload();
    }, 5000);
</script>

答案 1 :(得分:0)

使用javascript将iframe的src更改为&#34; my-messages.php&#34;再次。这是一个使用JQuery来选择元素的解决方案。

<iframe src="my-messages.php" id="frame">

你的JS中的

var refreshMS = 10000;
var $frame = $('#frame');
var timeoutFunction = function(){
  $frame.attr("src", "");
  $frame.attr("src", "my-messages.php");
  setTimeout(timeoutFunction, refreshMS);
};
setTimeout(timeoutFunction, refreshMS);

这基本上每10秒设置一次src元素,导致iframe重新加载其内容。

编辑:按照建议使用非jquery版本

var refreshMS = 10000;
var frame = document.getElementById("frame");
var timeoutFunction = function(){
  frame.setAttribute("src", "");
  frame.setAttribute("src", "my-messages.php");
  setTimeout(timeoutFunction, refreshMS);
};
setTimeout(timeoutFunction, refreshMS);

答案 2 :(得分:0)

这是一种方法,但如果用户在iframe中执行任何操作,他们将失去进度。

&#13;
&#13;
window.setInterval(function() {
  document.querySelector('iframe.reload').setAttribute('src', 'https://freesecure.timeanddate.com/clock/i5sso5fg/n1328/tluk');
}, 5000);
&#13;
<iframe class="reload" src="https://freesecure.timeanddate.com/clock/i5sso5fg/n1328/tluk" frameborder="0" width="57" height="18"></iframe>
&#13;
&#13;
&#13;