Wir alle wissen, dass Ajax den Browsern asynchrone Ladefunktionen bietet, was die Benutzererfahrung in Bezug auf Datenüberprüfung, teilweise Aktualisierung usw. verbessert, aber gleichzeitig gibt es die folgenden Probleme:
1. Der Seiteninhalt kann ohne Aktualisierung geändert werden, die Seiten-URL kann jedoch nicht geändert werden
2. Die Hash-Methode kann Browser-Vorwärts- und Rückwärtsprobleme nicht gut verarbeiten
Um die durch herkömmliches Ajax verursachten Probleme zu lösen, wurde die Verlaufs-API in HTML5 gestärkt und um PushState-, ReplacementState-Schnittstellen und Popstate-Ereignisse erweitert. Ich werde es hier nicht im Detail vorstellen. Studierenden, die nicht über diese Kenntnisse verfügen, wird empfohlen, zuerst die entsprechenden Informationen zu lesen.
Das Pjax-Plug-In kapselt PushState- und Ajax-Operationen und bietet uns eine einfache Methode zum Entwickeln dieser Art von Webanwendung. Die spezifischen Schritte sind wie folgt:
Definieren Sie Container, die teilweise Aktualisierungen erfordern
Backend verarbeitet Pjax-Anfragen
Die Verarbeitungslogik des Backends besteht darin, zunächst zu bestimmen, ob es sich um eine Pjax-Anfrage handelt. Wenn ja, geben Sie den lokalen Inhalt gemäß den Anforderungsparametern zurück, andernfalls geben Sie das Layout-Layout zurück und initiieren Sie dann Pjax durch „$.pjax.reload“. ('#container');` fragen. Basierend auf der obigen Logik kann der folgende Code geschrieben werden:
Vollständiger Code: pjax-demo
Dies ist nur die grundlegendste Funktion von pjax. pjax bietet eine umfangreiche API, besuchen Sie bitte: jquery-pjax