Heim Web-Frontend H5-Tutorial Detaillierte Einführung in die Anwendungsbeispiele von History.pushState() in h5

Detaillierte Einführung in die Anwendungsbeispiele von History.pushState() in h5

May 18, 2017 am 10:44 AM

In HTML-Dateien fügt die Methode „history.pushState()“ einen Zustand zum Browserverlauf hinzu.

pushState() benötigt drei Parameter: ein Statusobjekt, einen Titel (jetzt ignoriert) und eine optionale URL-Adresse . Diese drei Parameter werden im Folgenden im Detail untersucht:

Statusobjekt – Das Statusobjekt ist ein JS-Objekt, das sich auf den von der Methode pushState() erstellten Verlauf bezieht. Wenn der Benutzer zu einem neuen Status weitergeleitet wird, wird das Popstate-Ereignis ausgelöst. Die Statuseigenschaft des Ereignisses enthält das Statusobjekt des Verlaufs. (Anmerkung des Übersetzers: Kurz gesagt, es speichert JSON-Zeichenfolgen und kann in Popstate-Ereignissen verwendet werden.) Das Statusobjekt kann alles sein, was serialisiert werden kann. Da Firefox diese Objekte auf der Festplatte des Benutzers speichert und diese Statusobjekte daher wiederhergestellt werden, nachdem der Benutzer den Browser neu startet, legen wir für die serialisierte Darstellung des Statusobjekts eine maximale Zeichenfolgengröße von 640 KB fest. Wenn Sie ein Statusobjekt mit einer serialisierten Darstellung von mehr als 640 KB an die Methode pushState() übergeben, löst diese Methode eine Ausnahme aus. Wenn Sie mehr Speicherplatz benötigen, empfiehlt sich die Verwendung von sessionStorage oder localStorage.

Titel – Dieser Parameter wird jetzt von Firefox ignoriert und kann in Zukunft verwendet werden. Um mögliche zukünftige Änderungen zu berücksichtigen, ist es sicher, eine leere Zeichenfolge zu übergeben. Natürlich können Sie einen Kurztitel für den Staat angeben, in den Sie wechseln möchten. (Anmerkung des Übersetzers: Die meisten Browser unterstützen oder ignorieren diesen Parameter derzeit nicht. Verwenden Sie stattdessen am besten null.)

URL – Dieser Parameter gibt die Adresse des neuen historischen Datensatzes an. Bitte beachten Sie, dass der Browser diese URL nach dem Aufruf der pushState()-Methode nicht lädt, dies jedoch möglicherweise später geschieht, beispielsweise nachdem der Benutzer den Browser neu startet. Die neue URL muss keine absolute Adresse sein; wenn sie relativ ist, muss sie relativ zur aktuellen URL sein. Die neue URL muss denselben Ursprung haben wie die aktuelle URL; andernfalls löst pushState() eine Ausnahme aus. Dieser Parameter ist optional. Wenn er nicht angegeben wird, wird er auf die aktuelle URL des Dokuments gesetzt.

Hinweis: In Gecko 2.0 (Firefox 4 / Thunderbird 3.3 / SeaMonkey 2.1) bis Gecko 5.0 (Firefox 5.0 / Thunderbird 5.0 / SeaMonkey 2.2) werden die übertragenen Objekte mithilfe von JSON serialisiert. Ab Gecko 6.0 (Firefox 6.0 / Thunderbird 6.0 / SeaMonkey 2.3) wird das Objekt mithilfe des strukturierten Klonalgorithmus serialisiert. Dadurch kann ein vielfältigeres Objekt übertragen werden.

In einigen Fällen entspricht der Aufruf von pushState dem Festlegen von window.location = „#foo“. In diesem Fall erstellen und aktivieren beide Aktionen einen weiteren Verlaufseintrag, der sich auf die aktuelle Seite bezieht.

Aber pushState() hat noch andere Vorteile:

Die neue URL kann eine beliebige Adresse unter demselben Ursprung der aktuellen URL sein. Im Gegenteil, wenn Sie window.location festlegen, bleiben Sie auf derselben Seite, es sei denn, Sie ändern nur den Hash.

Wenn dies nicht erforderlich ist, können Sie die URL nicht ändern und stattdessen festlegen window.location Auf „#foo“ gesetzt; erstellt nur dann einen neuen Verlaufseintrag, wenn der aktuelle Hash nicht #foo ist.

Sie können Ihrem neuen Verlaufseintrag beliebige Daten zuordnen Beim Hash-basierten Ansatz müssen Sie alle relevanten Daten in eine kurze Zeichenfolge kodieren. Sie können beliebige Daten mit Ihrem neuen Verlaufsdatensatz verknüpfen. Mithilfe eines Hash-basierten Ansatzes kodieren Sie alle relevanten Daten in einen kurzen String.

Bitte beachten Sie, dass die Methode pushState() niemals dazu führt, dass das Hashchange-Ereignis aktiviert wird, auch wenn sich die neue URL nur im Hash von der alten unterscheidet.

In XUL wird ein spezielles XUL-Element erstellt.

In anderen Dokumenten wird ein leerer URI-Namespace erstellt.

Syntax BEARBEITEN

history.pushState(state, title, url);
Nach dem Login kopieren

Beispiel BEARBEITEN

Erstellt ein neuer Browserverlauf, der nach Status, Titel und URL festgelegt wird.

JavaScript

var state = { 'page_id': 1, 'user_id': 5 };
var title = 'Hello World';var url = 'hello-world.html';
history.pushState(state, title, url);
Nach dem Login kopieren

【相关推荐】

1. 特别推荐“php程序员工具箱”V0.1版本下载

2. js中的window.history的用法(一)

3. js中的window.history的用法(二)

4. 深入了解h5中history特性--pushState、replaceState

5. h5中History API 对Web应用的影响

Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in die Anwendungsbeispiele von History.pushState() in h5. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was bedeutet h5? Was bedeutet h5? Aug 02, 2023 pm 01:52 PM

H5 bezieht sich auf HTML5, die neueste Version von HTML. H5 ist eine leistungsstarke Auszeichnungssprache, die Entwicklern mehr Auswahlmöglichkeiten und kreativen Raum bietet. Ihr Aufkommen fördert die Entwicklung der Web-Technologie und macht die Interaktion und Wirkung von Webseiten noch besser Wenn es allmählich reift und populär wird, glaube ich, dass es in der Internetwelt eine immer wichtigere Rolle spielen wird.

Wie unterscheidet man zwischen H5, WEB-Front-End, Big-Front-End und WEB-Full-Stack? Wie unterscheidet man zwischen H5, WEB-Front-End, Big-Front-End und WEB-Full-Stack? Aug 03, 2022 pm 04:00 PM

Dieser Artikel hilft Ihnen dabei, schnell zwischen H5, WEB-Front-End, großem Front-End und WEB-Full-Stack zu unterscheiden. Ich hoffe, er wird Freunden in Not helfen!

So verwenden Sie die Position in h5 So verwenden Sie die Position in h5 Dec 26, 2023 pm 01:39 PM

In H5 können Sie das Positionsattribut verwenden, um die Positionierung von Elementen über CSS zu steuern: 1. Relative Positionierung, die Syntax lautet „style="position: relative;"; 2. Absolute Positionierung, die Syntax lautet „style="position: absolute;“ „; 3. Feste Positionierung, die Syntax lautet „style="position: Fixed;" und so weiter.

So implementieren Sie h5, um auf der Webseite nach oben zu schieben und die nächste Seite zu laden So implementieren Sie h5, um auf der Webseite nach oben zu schieben und die nächste Seite zu laden Mar 11, 2024 am 10:26 AM

Implementierungsschritte: 1. Überwachen Sie das Scroll-Ereignis der Seite. 2. Stellen Sie fest, ob die Seite nach unten gescrollt wurde. 3. Laden Sie die nächste Seite mit Daten. 4. Aktualisieren Sie die Scroll-Position der Seite.

So implementieren Sie die H5-Formularvalidierungskomponente in vue3 So implementieren Sie die H5-Formularvalidierungskomponente in vue3 Jun 03, 2023 pm 02:09 PM

Die Rendering-Beschreibung basiert auf vue.js und ist nicht auf andere Plug-Ins oder Bibliotheken angewiesen. Die Grundfunktionen bleiben mit element-ui konsistent und es wurden einige Anpassungen an der internen Implementierung für mobile Unterschiede vorgenommen. Die aktuelle Konstruktionsplattform basiert auf dem offiziellen Gerüst der Uni-App. Da die meisten mobilen Terminals derzeit über zwei Typen verfügen: H6- und WeChat-Miniprogramme, ist es für die Technologieauswahl sehr gut geeignet, einen Codesatz auf mehreren Terminals auszuführen. Implementierungsidee Kern-API: Verwenden Sie Provide und Inject, entsprechend und. In der Komponente wird intern eine Variable (Array) zum Speichern aller Instanzen verwendet, und die zu übertragenden Daten werden über „prove“ verfügbar gemacht. Die Komponente verwendet intern „inject“, um die von der übergeordneten Komponente bereitgestellten Daten zu empfangen, und kombiniert schließlich ihre eigenen Attribute mit Methodeneinreichung

Worauf bezieht sich H5? Erforschen des Kontextes Worauf bezieht sich H5? Erforschen des Kontextes Apr 12, 2025 am 12:03 AM

H5REFERSTOHTML5, ApivotaltechnologyInwebdevelopment.1) HTML5IntroducesNewelementsandapisrich, Dynamicwebapplications.2) ITSUPP ortsmultimediaWitHoutPlugins, BETHINGINGUSEREXPERICERCROSSDEVICES.3) SEMANTICELEMENTSIMPROVEPENTENTENTENTRUCTENTRUCTELUREANDSEO.4) H5'SRespo

Zusammenfassung und Einführung in das neue H5-Promotion-Tag (mit Beispielen) Zusammenfassung und Einführung in das neue H5-Promotion-Tag (mit Beispielen) Aug 03, 2022 pm 05:10 PM

​Dieser Artikel gibt Ihnen eine Einführung in die neuen H5-Werbe-Tags. Ich hoffe, dass er Freunden in Not hilfreich sein wird!

H5 -Code: Zugänglichkeit und semantische HTML H5 -Code: Zugänglichkeit und semantische HTML Apr 09, 2025 am 12:05 AM

H5 verbessert die Zugänglichkeits- und SEO -Effekte der Webseiten durch semantische Elemente und Aria -Attribute. 1. Verwendung usw., um die Inhaltsstruktur zu organisieren und SEO zu verbessern. 2. ARIA-Attribute wie ARIA-Label verbessern die Zugänglichkeit, und assistive Technologie-Benutzer können Webseiten reibungslos verwenden.

See all articles