JS - 如何从iframe中的链接返回时在页面上重新加载iframe

时间:2017-06-01 16:38:31

标签: javascript html

我有一个包含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

1 个答案:

答案 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