2017-09-14 4 views
0

Ich habe versucht, eine Funktionalität zu implementieren, wenn die Seite aktualisiert wird. Ich dachte, dass Wert vonwindow.performance.navigation.type funktioniert in IE und Firefox aber NICHT in CHROME

window.performance.navigation.type 

dreht 1, wenn die Seite neu geladen sonst, es ist 0. ich eine Warnmeldung beim Laden der Seite erstellt und die Werte korrekt sind für IE und Firefox, aber es bleibt „0“ für Chrome in ganz egal wie oft die Seite neu geladen wird. Ich habe auch versucht windows.onbeforeunload wie andere stackoverflow Antworten, aber nichts scheint zu funktionieren!

Wie kann ich das beheben?

ODER

Gibt es eine andere Möglichkeit, eine Seite neu geladen zu erkennen, die auf allen Browsern funktioniert?

Danke!

+1

Chrome unterstützt dies nicht: https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigation – Dekel

+0

Mögliches Duplikat von [Überprüfen Sie, ob die Seite in Javascript neu geladen oder aktualisiert wird] (https: // stackoverflow.com/questions/5004978/check-if-page-gets-reloaded-or-refreshed-in-javascript) – pvg

+0

@Dekel ungerade ist das nicht die [doc api] (https://developer.mozilla.org/ en-US/docs/Web/API/Leistung/Navigation) sagt Chrome 10 + Unterstützung? ** edit nvm, das ist die Elterninfo ** – Andrei

Antwort

2

Gemäß den Dokumenten gibt die Performance.navigation-Eigenschaft ein Objekt PerformanceNavigation zurück.

Überprüfen Sie die browsers compatibility am unteren Rand der Seite können Sie sehen, dass Chrome nicht unterstützt wird.

+0

Dank @Dekel, aber jede andere Lösung, die Sie kennen? – Gsm

+0

Können Sie erklären, was genau die Funktionalität ist, nach der Sie suchen? – Dekel

+0

Hallo @Dekel, ich versuche, zu einer anderen Seite zu navigieren, wenn die Seite neu geladen wird. Also habe ich zuerst versucht, herauszufinden, ob es ein 'reload' ist, der den Wert von performance.Navigation.type verwendet und dann den location href verwendet, um zu einer anderen Seite zu navigieren. Es funktionierte auf IE und Firefox, aber nicht auf Chrome. Es wäre hilfreich, eine Lösung zu finden, die auf allen Browsern funktioniert. – Gsm

0

Seit dem 01.11.2017 unterstützt Chrome (61.0.3163.100) die performance.navigation-API. Einen Beispielcode finden Sie unter this gist, den Sie in eine Seite einfügen können, damit sie funktioniert.

Ich kann das Chromium-Ticket nicht finden, das die Entwicklung verfolgt, aber this Chromium blog post verweist auf die W3-Spezifikation, die die performance.navigation-API definiert, daher wurde sie möglicherweise in einer aktuellen Version vollständig unterstützt.

Verwandte Themen