A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://developer.mozilla.org/de/docs/Web/API/Page_Visibility_API below:

Page Visibility API - Web-APIs

Page Visibility API

Baseline Widely available

Die Page Visibility API bietet Ereignisse, auf die Sie lauschen können, um zu wissen, wann ein Dokument sichtbar oder versteckt wird, sowie Funktionen, um den aktuellen Sichtbarkeitszustand der Seite zu prüfen.

Dies ist besonders nützlich, um Ressourcen zu sparen und die Leistung zu verbessern, indem eine Seite unnötige Aufgaben vermeidet, wenn das Dokument nicht sichtbar ist.

Konzepte und Nutzung

Wenn der Benutzer das Fenster minimiert, zu einem anderen Tab wechselt oder das Dokument vollständig von einem anderen Fenster verdeckt wird, sendet die API ein visibilitychange-Ereignis, um den Listenern mitzuteilen, dass sich der Zustand der Seite geändert hat. Sie können das Ereignis erkennen und einige Aktionen ausführen oder sich anders verhalten. Wenn Ihre Web-App beispielsweise ein Video abspielt, kann das Video pausiert werden, wenn der Benutzer den Tab in den Hintergrund legt, und die Wiedergabe fortsetzen, wenn der Benutzer zum Tab zurückkehrt. Der Benutzer verliert nicht seine Position im Video, der Soundtrack des Videos stört nicht den Ton im neuen Vordergrund-Tab, und der Benutzer verpasst keinen Teil des Videos in der Zwischenzeit.

Die Sichtbarkeitszustände eines <iframe> sind die gleichen wie des übergeordneten Dokuments. Das Verstecken eines <iframe> mit CSS-Eigenschaften (wie display: none;) löst keine Sichtbarkeitsereignisse aus oder ändert den Zustand des Dokuments innerhalb des Frames.

Anwendungsfälle

Betrachten wir einige Anwendungsfälle für die Page Visibility API.

Entwickler haben historisch gesehen unvollständige Ersatzlösungen verwendet, um dies zu erkennen. Zum Beispiel hilft es, auf blur und focus-Ereignisse des Fensters zu achten, um zu wissen, wenn Ihre Seite nicht die aktive Seite ist, aber es sagt Ihnen nicht, dass Ihre Seite dem Benutzer tatsächlich verborgen ist. Die Page Visibility API adressiert dies.

Hinweis: Während onblur und onfocus Ihnen mitteilen, ob der Benutzer die Fenster wechselt, bedeutet das nicht unbedingt, dass es verborgen ist. Seiten werden nur dann verborgen, wenn der Benutzer Tabs wechselt oder das Browserfenster mit dem Tab minimiert.

Richtlinien zur Unterstützung der Leistung von Hintergrundseiten

Unabhängig von der Page Visibility API haben Benutzeragenten typischerweise eine Reihe von Richtlinien zur Minderung des Leistungsaufwands von Hintergrund- oder versteckten Tabs. Diese können umfassen:

Einige Prozesse sind von diesem Drosselverhalten ausgenommen. In diesen Fällen können Sie die Page Visibility API verwenden, um die Leistungsbeeinträchtigung der Tabs zu reduzieren, während sie verborgen sind.

Erweiterungen zu anderen Schnittstellen Instanzeigenschaften

Die Page Visibility API fügt der Document-Schnittstelle die folgenden Eigenschaften hinzu:

Document.hidden Schreibgeschützt

Gibt true zurück, wenn die Seite in einem Zustand ist, der als verborgen für den Benutzer gilt, und false andernfalls.

Document.visibilityState Schreibgeschützt

Ein String, der den aktuellen Sichtbarkeitsstatus des Dokuments anzeigt. Mögliche Werte sind:

visible

Der Seiteninhalt kann zumindest teilweise sichtbar sein. In der Praxis bedeutet dies, dass die Seite der Vordergrund-Tab eines nicht-minimierten Fensters ist.

hidden

Der Inhalt der Seite ist für den Benutzer nicht sichtbar, entweder weil der Tab des Dokuments im Hintergrund ist oder Teil eines minimierten Fensters oder weil der Bildschirm des Geräts ausgeschaltet ist.

Ereignisse

Die Page Visibility API fügt der Document-Schnittstelle die folgenden Ereignisse hinzu:

visibilitychange

Wird ausgelöst, wenn der Inhalt eines Tabs sichtbar geworden ist oder versteckt wurde.

Beispiele Audio pausieren bei Seitenverstecken

Dieses Beispiel paust das abspielende Audio, wenn die Seite versteckt wird, und setzt das Abspielen fort, wenn die Seite wieder sichtbar wird. Die <audio>-Elementsteuerungen erlauben dem Benutzer, zwischen abspielendem und pausiertem Audio zu wechseln. Der boolesche playingOnHide wird verwendet, um zu verhindern, dass Audio abspielt, wenn der Seitenstatus visible wird, wenn die Medien beim Verstecken der Seite nicht gespielt wurden.

HTML
<audio
  controls
  src="https://mdn.github.io/webaudio-examples/audio-basics/outfoxing.mp3"></audio>
JavaScript
const audio = document.querySelector("audio");

let playingOnHide = false;

document.addEventListener("visibilitychange", () => {
  if (document.hidden) {
    playingOnHide = !audio.paused;
    audio.pause();
  } else if (playingOnHide) {
    // Page became visible! Resume playing if audio was "playing on hide"
    audio.play();
  }
});
Ergebnis Spezifikationen Browser-Kompatibilität Siehe auch

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4