Heim > Artikel > Web-Frontend > Wie erkennt man den Klick des Benutzers auf die Zurück-Schaltfläche in Browsern, ohne dass es zu Störungen beim Neuladen des Browsers kommt?
Beim Versuch, Klicks auf die Zurück-Schaltfläche zu erkennen, verlassen sich Entwickler häufig auf den Ereignis-Listener window.onbeforeunload. Dieses Ereignis wird jedoch nicht nur bei Klicks auf die Zurück-Schaltfläche ausgelöst, sondern auch beim Neuladen des Browsers, was irreführend sein kann.
Erkennen von Klicks auf die Zurück-Schaltfläche ohne Beeinträchtigung des Browser-Neuladens
Umzugehen Klicken Sie auf die Zurück-Schaltfläche ohne Fehlalarme. Erwägen Sie die Verwendung eines maßgeschneiderten Ansatzes:
Verlaufsänderung:
Hash-basierter Ansatz:
Implementierung
<code class="javascript">window.onload = function () { if (typeof history.pushState === "function") { history.pushState("jibberish", null, null); window.onpopstate = function () { history.pushState('newjibberish', null, null); // Handle back button click here }; } else { var ignoreHashChange = true; window.onhashchange = function () { if (!ignoreHashChange) { ignoreHashChange = true; window.location.hash = Math.random(); // Handle back button click here } else { ignoreHashChange = false; } }; } }</code>
Kompatibilität
Dieser Ansatz Es wurde berichtet, dass es in Chrome und Firefox effektiv funktioniert.
Das obige ist der detaillierte Inhalt vonWie erkennt man den Klick des Benutzers auf die Zurück-Schaltfläche in Browsern, ohne dass es zu Störungen beim Neuladen des Browsers kommt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!