This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The focused read-only property of the WindowClient interface is a Boolean that indicates whether the current client has focus.
myFocused = WindowClient.focused;
A Boolean.
self.addEventListener('notificationclick', function(event) {
console.log('On notification click: ', event.notification.tag);
event.notification.close();
// This looks to see if the current is already open and
// focuses if it is
event.waitUntil(clients.matchAll({
type: "window"
}).then(function(clientList) {
for (var i = 0; i < clientList.length; i++) {
var client = clientList[i];
if (client.url == '/' && 'focus' in client) {
if(!client.focused)
return client.focus();
}
}
}
if (clients.openWindow)
return clients.openWindow('/');
}));
}); | Specification | Status | Comment |
|---|---|---|
| Service Workers The definition of 'WindowClient: focused' in that specification. | Working Draft | Initial definition |
| Desktop | ||||||
|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
| Basic support | 42 | Yes | 44
|
No | ? | No |
| Mobile | |||||||
|---|---|---|---|---|---|---|---|
| Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
| Basic support | No | 42 | ? | 44 | ? | No | 4.0 |
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WindowClient/focused