WindowClient.visibilityState

The visibilityState read-only property of the WindowClient interface indicates the visibility of the current client. This value can be one of "hidden", "visible", or "prerender".

Syntax

var myVisState = windowClient.visibilityState;

Value

A DOMString (See Document.visibilityState for values).

Example

event.waitUntil(clients.matchAll({
    type: "window"
  }).then(function(clientList) {
    for (let i = 0; i < clientList.length; i++) {
      let client = clientList[i];
      if (client.url == '/' && 'focus' in client) {
        if (client.visibilityState === 'hidden')
          return client.focus();
        }
      }
    }

    if (clients.openWindow) {
      return clients.openWindow('/');
    }
  }));
});

Specifications

Specification
Service Workers 1
# client-visibilitystate

Browser compatibility

BCD tables only load in the browser