我有一个包含iframe的页面。以下代码重新加载页面,当它再次处于焦点时。这很好。
但是当我从iframe中导航离开页面时(包含一个包含行的表格),当页面再次处于焦点时,页面也应该重新加载iframe。
如何在vanilla JS(IE8)中实现它。
var blurred = false;
window.onblur = function() { blurred = true; };
window.onfocus = function() { blurred && (reloadFrames()); };
function reloadFrames() {
document.getElementById('iframe1').contentWindow.location.reload();
} // reloadFrames
答案 0 :(得分:0)
感谢评论和提示! 这就是我的工作方式:
在主页上实施:
/**
* Calls reloadFrames when page is on focus again.
*/
var visibilityChange = (function(window) {
return function(fn) {
window.onfocus = function(e) {
reloadFrames();
};
} ();
} (window)); // Window object
var reloadFrames = function () {
document.getElementById('iframe1').contentWindow.location.reload();
} // reloadFrames
在位于iframe的页面上实施:
/**
* Calls reloadFrames when parent page is on focus again.
*/
var visibilityChange = (function(parent) {
return function(fn) {
window.onfocus = function(e) {
parent.reloadFrames();
};
} ();
} (parent)); // Parent object