我有一个iframe,我想在不进行整页刷新的情况下自动刷新自己。我更喜欢使用javascript或jquery。这是我一直尝试失败的原因。
<div class="Widget"><!--DARK SKY-->
<div class="WidgetHeader">
<img src = "images/WidgetHeaders/DarkSky.png"></div>
<div id="DarkSky" style="width: auto; height: 245px; padding: 5px; background-color: hsla(0,0%,100%,.9);">
<iframe id="forecast_embed" type="text/html" frameborder="0" height="245" width="100%" src="http://forecast.io/embed/#lat=38.269571&lon=-85.487420&name=Louisville&units=us&color=#4c7cba"> </iframe>
</div>
</div>
<script type = "text/javascript">
window.onload = function() {
setInterval(function refreshDarkSky() {
document.getElementById("#forecast_embed").src ="http://forecast.io/embed/#lat=38.269571&lon=-85.487420&name=Louisville&units=us&color=#4c7cba"
}, 90000);
}
</script>
答案 0 :(得分:1)
如果iframe不是来自不同的域,您可以使用:
document.getElementById('forecast_embed').contentDocument.location.reload(true);
用于跨域,
var iframe = document.getElementById('forecast_embed');
iframe.src = iframe.src;
答案 1 :(得分:1)
试试这段代码
$(document).ready(function () {
setInterval(function refreshDarkSky() {
$("#forecast_embed").attr("src","http://forecast.io/embed/#lat=38.269571&lon=-85.487420&name=Louisville&units=us&color=#4c7cba");
}, 90000);
});
答案 2 :(得分:0)
使用此:
$('#forecast_embed',window.parent.document).attr('src',
$('#forecast_embed',window.parent.document).attr('src'));
它必须解开你的问题。
答案 3 :(得分:-1)
试试这个
window.top.location.reload();