From 074785cea106179cb3305637055ab0a009ca74f2 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:42:52 -0500 Subject: initial commit --- files/ru/web/api/windowclient/index.html | 98 ++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 files/ru/web/api/windowclient/index.html (limited to 'files/ru/web/api/windowclient/index.html') diff --git a/files/ru/web/api/windowclient/index.html b/files/ru/web/api/windowclient/index.html new file mode 100644 index 0000000000..66aed83307 --- /dev/null +++ b/files/ru/web/api/windowclient/index.html @@ -0,0 +1,98 @@ +--- +title: WindowClient +slug: Web/API/WindowClient +tags: + - API + - Client + - Experimental + - Interface + - Reference + - Service Workers + - ServiceWorker + - WindowClient +translation_of: Web/API/WindowClient +--- +

{{APIRef("Service Workers API")}}

+ +

Интерфейс WindowClient ServiceWorker API представляет область действия клиента сервис-воркера, который представляет собой документ в контексте просмотра, управляемый активным исполнителем. Клиент сервис-воркера самостоятельно выбирает и использует сервис-воркера для собственной загрузки и загрузки подресурсов.

+ +

Методы

+ +

WindowClient наследует методы от своего родительского интерфейса {{domxref("Client")}}.

+ +
+
{{domxref("WindowClient.focus()")}}
+
Фокусирует пользователя на текущем окне.
+
{{domxref("WindowClient.navigate()")}}
+
Загружает указанный URL-адрес на управляемую клиентскую страницу.
+
+ +

Свойства

+ +

WindowClient наследует методы от своего родительского интерфейса {{domxref("Client")}}.

+ +
+
{{domxref("WindowClient.focused")}} {{readonlyInline}}
+
Логическое значение, указывающее, находится ли текущая страница в фокусе.
+
{{domxref("WindowClient.visibilityState")}} {{readonlyInline}}
+
Указывает, отоборажается ли текущая страница. Это значение может быть одним из "hidden" (скрыта), "visible" (отображена) или "prerender" (предварительно отрисована).
+
+ +

Пример

+ +
self.addEventListener('notificationclick', function(event) {
+  console.log('On notification click: ', event.notification.tag);
+  event.notification.close();
+
+  // Проверяем, открыто ли окно и
+  // сфокусрованы ли на нем
+  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) {
+        client.focus();
+        break;
+      }
+    }
+    if (clients.openWindow)
+      return clients.openWindow('/');
+  }));
+});
+ +

Спецификации

+ + + + + + + + + + + + + + +
СпецификацияСтатусКомментарий
{{SpecName('Service Workers', '#windowclient', 'WindowClient')}}{{Spec2('Service Workers')}}Initial definition
+ +

Совместимость с браузером

+ +
+ + +

{{Compat("api.WindowClient")}}

+
+ +

Смотрите также

+ + -- cgit v1.2.3-54-g00ecf