Kommentar: Wir haben seit langem eine Methode fehlen, um festzustellen, ob ein Benutzer eine angegebene Registerkarte durchsucht. Haben Benutzer andere Websites besucht? Haben sie zurückgeschaltet?
In der Sichtbarkeitsschnittstelle in HTML5 werden Programmierern eine Methode zur Verwendung des Ereignisses der SichtbarkeitsChange -Seite zur Beurteilung des aktuellen Sichtbarkeitsstatus und bestimmte Aufgaben auf gezielte Weise zur Verfügung gestellt. Es gibt auch ein neues Dokument, das verwendet werden kann.
document.hidden
In diesem neu angereicherten Dokument. Hidden Eigenschaft zeigt, ob es sich bei der Seite um die Seite handelt, die derzeit vom Benutzer angezeigt wird, mit einem Wert von TURE oder FALSE.
document.visibilityState
Der Wert des Sichtbarkeitsstaates ist entweder sichtbar (zeigt an, dass die Seite derzeit vom Browser aktiviert wird und das Fenster nicht minimiert ist) oder versteckt (die Seite wird derzeit nicht von der Registerkartenseite oder dem Fenster minimiert.) Oder vorbereitet (die Seite ist nicht sichtbar und ist nicht sichtbar für den Benutzer.).
Ereignis zur Sichtbarkeitschange
Es ist sehr einfach, sich die Änderungen der Sichtbarkeit von Seiten anzuhören:
// kompatibel mit verschiedenen Browsern
var versteckt, Zustand, Sichtbarkeitsschonung;
if (typeof document.hidden! == "undefined") {
versteckt = "versteckt";
vissibilityChange = "vissibilityChange";
state = "vissibilityState";
} else if (typeof document.mozhidden! == "undefined") {
versteckt = "Mozhidden";
vissibilityChange = "mozvisibilsiblechange";
State = "MozvisibsibilityState";
} else if (typeof document.mshidden! == "undefined") {
versteckt = "mShidden";
vissibilityChange = "msvisibsibilityChange";
state = "msvisibsibilityState";
} else if (typeof document.webkithidden! == "undefined") {
hidden = "webkithidden";
vissibilityChange = "webkitvisibilityChange";
state = "webkitvisibilityState";
} </p> <p> // Fügen Sie einen Hörer hinzu, um Statusänderungen im Titel anzuzeigen
document.addeventListener (SichtbarkeitsChange, function () {
document.title = document [state];
}, false); </p> <p> // Initialisierung
document.title = document [state];
Der obige Code ändert den Wert des document.title, wenn sich die Sichtbarkeit der Seite ändert!
Wann müssen Sie das Ereignis zum Sichtbarkeitsschutz verwenden? Wenn beispielsweise auf Ihrer Seite ein eingebettetes Video vorhanden ist, sollte das Video auf Ihrer Registerkarte automatisch die Wiedergabe pausieren und weiter spielen, wenn der Benutzer zurückschaltet. Wenn beispielsweise Ihre Seite eine automatische Aktualisierungsaktion hat, sollten Sie beim Umschalten des Benutzer auf andere Registerkarten aufhören, die Aktualisierung zu aktualisieren und die vorherige Aktion fortzusetzen, wenn der Benutzer zurückschaltet.