Window: closed 属性

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

Window.closed 只读属性指示引用的窗口是否已关闭。

布尔值。可能的值

  • true:窗口已关闭。
  • false:窗口已打开。

示例

更改弹出窗口的 URL

以下示例演示了弹出窗口如何更改打开它的窗口的 URL。在尝试更改 URL 之前,它会检查当前窗口是否具有使用 window.opener 属性的打开者,并且该打开者未关闭。

js
// Check that an opener exists and is not closed
if (window.opener && !window.opener.closed) {
  window.opener.location.href = "https://www.mozilla.org";
}

请注意,弹出窗口只能访问打开它们的窗口。

刷新先前打开的弹出窗口

在此示例中,refreshPopupWindow() 函数调用弹出窗口的 location 对象的 reload() 方法来刷新其数据。如果尚未打开弹出窗口或用户已关闭它,则会打开一个新窗口。

js
let popupWindow = null;

function refreshPopupWindow() {
  if (popupWindow && !popupWindow.closed) {
    // popupWindow is open, refresh it
    popupWindow.location.reload(true);
  } else {
    // Open a new popup window
    popupWindow = window.open("popup.html", "dataWindow");
  }
}

规范

规范
HTML
# dom-window-closed-dev

浏览器兼容性