


Utilisez ajax pour modifier le contenu de la page et l'URL de la barre d'adresse sans actualiser
Cet article présente principalement en détail la méthode d'utilisation d'ajax et window.history.pushState pour modifier le contenu de la page et l'URL de la barre d'adresse sans actualiser. Les amis dans le besoin peuvent s'y référer
Lors de la visite du désormais populaire. Google Plus, les utilisateurs prudents peuvent constater que les clics entre les pages sont demandés de manière asynchrone via ajax et que l'URL de la page change en même temps. Et il peut très bien prendre en charge l'avant et l'arrière du navigateur. Les gens ne peuvent s’empêcher de se demander : qu’est-ce qui a une fonction si puissante ?
HTML5 référence de nouvelles API, à savoir history.pushState et history.replaceState C'est grâce à cette interface que l'URL de la page peut être modifiée sans actualisation.
Différences par rapport à l'AJAX traditionnel
L'ajax traditionnel présente les problèmes suivants :
Bien que l'ajax puisse modifier le contenu de la page sans l'actualiser, il ne peut pas être modifié. URL de la page
Deuxièmement, pour une meilleure accessibilité, modifiez le hachage de l'URL après les modifications du contenu. Cependant, la méthode de hachage ne peut pas très bien gérer les problèmes d'avant et d'arrière du navigateur
Certains navigateurs ont introduit l'interface onhashchange. Les navigateurs qui ne la prennent pas en charge ne peuvent déterminer que périodiquement si le hachage a changé
. De plus, l'utilisation d'ajax est très peu conviviale pour les moteurs de recherche, et les zones explorées par les robots sont souvent vides
Afin de résoudre les problèmes causés par l'ajax traditionnel, une nouvelle API a été introduite en HTML5, à savoir : history .pushState, history.replaceState
Vous pouvez utiliser l'historique du navigateur via les interfaces pushState et replaceState et modifier l'URL de la page actuelle.
pushState consiste à ajouter l'URL spécifiée à l'historique du navigateur, et replaceState consiste à remplacer l'URL actuelle par l'URL spécifiée.
Comment appeler
var state = { title: title, url: options.url, otherkey: othervalue }; window.history.pushState(state, document.title, url);
En plus du titre et de l'url, l'objet state peut également ajouter d'autres données, par exemple : vous souhaitez également envoyer du ajax configurations Enregistrez-le.
replaceState et pushState sont similaires et aucune explication supplémentaire n'est nécessaire.
Comment répondre aux opérations avant et arrière du navigateur
L'événement onpopstate est fourni sur l'objet window L'objet state passé ci-dessus deviendra un sous-objet de l'événement, afin que vous puissiez le faire. peut obtenir le titre et l'URL stockés.
window.addEventListener('popstate', function(e){ if (history.state){ var state = e.state; //do something(state.url, state.title); } }, false);
De cette façon, vous pouvez combiner ajax et pushState pour une navigation parfaite sans actualisation.
Quelques restrictions
1 Il est inévitable qu'il ne puisse pas traverser de domaine. Pour citer un dicton classique que j'ai vu une fois sur Internet : "Si javascript peut traverser des domaines, alors cela peut être incroyable !" 2 Bien que l'objet d'état puisse stocker de nombreux attributs personnalisés, la valeur ne peut pas être un objet. .
Correspond à certains traitements back-endDans ce mode, en plus d'utiliser ajax pour naviguer sans rafraîchir, il faut également s'assurer que la navigation normale peut également être effectué après avoir demandé directement l'URL modifiée, le backend doit donc les gérer.
1. Un en-tête spécial peut être envoyé à ajax combiné avec pushState, tel que : setRequestHeader('PJAX', 'true').
2. Lorsque le backend obtient l'en-tête avec PJAX=true, les parties communes de la page ne seront pas affichées. Par exemple : PHP peut juger à travers les éléments suivants
Bien que l'interface n'ait que pushState, replaceState et onpopstate, elle nécessite encore beaucoup de traitement lors de son utilisation.function is_pjax(){ return array_key_exists('HTTP_X_PJAX', $_SERVER) && $_SERVER['HTTP_X_PJAX'] === 'true'; }
Ce qui précède est ce que j'ai compilé pour vous. J'espère que cela vous sera utile à l'avenir.
Articles connexes :
Comment résoudre le problème d'échec ajax sur le navigateur Google ChromeCliquez sur chargement basé sur ajax pour en savoir plus non -rafraîchir le chargement Allez sur cette pageDeux solutions aux problèmes inter-domaines AjaxCe qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Lorsque vous naviguez sur le Web sur votre iPhone, le contenu chargé est temporairement stocké tant que l'application du navigateur reste ouverte. Cependant, le site Web met régulièrement à jour le contenu, donc actualiser la page est un moyen efficace d'effacer les anciennes données et de voir le dernier contenu publié. De cette façon, vous disposez toujours des dernières informations et expériences. Si vous souhaitez actualiser la page sur iPhone, l'article suivant vous expliquera toutes les méthodes. Comment actualiser les pages Web sur Safari [4 méthodes] Il existe plusieurs méthodes pour actualiser les pages que vous consultez sur l'application Safari sur iPhone. Méthode 1 : utiliser le bouton Actualiser Le moyen le plus simple d'actualiser une page ouverte sur Safari consiste à utiliser l'option Actualiser dans la barre d'onglets de votre navigateur. Si Safa

La touche F5 ne fonctionne pas correctement sur votre PC Windows 11/10 ? La touche F5 est généralement utilisée pour actualiser le bureau ou l'explorateur ou recharger une page Web. Cependant, certains de nos lecteurs ont signalé que la touche F5 actualisait leur ordinateur et ne fonctionnait pas correctement. Comment activer l’actualisation F5 dans Windows 11 ? Pour actualiser votre PC Windows, appuyez simplement sur la touche F5. Sur certains ordinateurs portables ou de bureau, vous devrez peut-être appuyer sur la combinaison de touches Fn+F5 pour terminer l'opération d'actualisation. Pourquoi l’actualisation F5 ne fonctionne-t-elle pas ? Si l'appui sur la touche F5 ne parvient pas à actualiser votre ordinateur ou si vous rencontrez des problèmes sous Windows 11/10, cela peut être dû au verrouillage des touches de fonction. D'autres causes potentielles incluent le clavier ou la touche F5

Dans le processus de fonctionnement de Meituan Takeout Merchant Edition, la fixation du prix de livraison de départ est un maillon crucial. Un prix de livraison initial raisonnable peut non seulement aider les commerçants à contrôler les coûts, mais également à augmenter dans une certaine mesure le montant des commandes, augmentant ainsi les revenus globaux. Cependant, de nombreux commerçants ne savent pas grand-chose sur la manière de modifier le prix minimum de livraison. Ainsi, dans l'article suivant, l'éditeur de ce site vous proposera un guide détaillé de fixation des prix de départ pour les commerçants. Si vous souhaitez en savoir plus, rendez-vous à l'article suivant pour le découvrir ! Dans Meituan Takeout Merchant Center, connectez-vous et entrez les paramètres du magasin, puis sélectionnez la gestion du magasin. Dans le menu de navigation en haut de la page de gestion du magasin, sélectionnez les informations de livraison, puis cliquez sur Ajouter une zone de livraison pour terminer l'opération. Une fois que vous avez ajouté un emplacement, les frais d'expédition correspondants apparaîtront automatiquement. Après avoir finalisé votre commande, vous recevrez

Titre : Méthodes et exemples de code pour résoudre les erreurs 403 dans les requêtes jQuery AJAX L'erreur 403 fait référence à une demande selon laquelle le serveur interdit l'accès à une ressource. Cette erreur se produit généralement parce que la demande manque d'autorisations ou est rejetée par le serveur. Lorsque vous effectuez des requêtes jQueryAJAX, vous rencontrez parfois cette situation. Cet article explique comment résoudre ce problème et fournit des exemples de code. Solution : Vérifiez les autorisations : assurez-vous d'abord que l'adresse URL demandée est correcte et vérifiez que vous disposez des autorisations suffisantes pour accéder à la ressource.

L'actualisation des pages est très courante dans notre utilisation quotidienne du réseau. Lorsque nous visitons une page Web, nous rencontrons parfois certains problèmes, comme la page Web qui ne se charge pas ou ne s'affiche pas anormalement, etc. À ce stade, nous choisissons généralement d'actualiser la page pour résoudre le problème, alors comment actualiser la page rapidement ? Discutons des touches de raccourci pour l'actualisation de la page. La touche de raccourci d'actualisation de page est une méthode permettant d'actualiser rapidement la page Web actuelle via des opérations au clavier. Dans différents systèmes d'exploitation et navigateurs, les touches de raccourci pour l'actualisation de la page peuvent être différentes. Ci-dessous, nous utilisons le W commun

jQuery est une bibliothèque JavaScript populaire utilisée pour simplifier le développement côté client. AJAX est une technologie qui envoie des requêtes asynchrones et interagit avec le serveur sans recharger la page Web entière. Cependant, lorsque vous utilisez jQuery pour effectuer des requêtes AJAX, vous rencontrez parfois des erreurs 403. Les erreurs 403 sont généralement des erreurs d'accès refusé par le serveur, probablement en raison de problèmes de politique de sécurité ou d'autorisation. Dans cet article, nous verrons comment résoudre la requête jQueryAJAX rencontrant une erreur 403.

L'utilisation d'Ajax pour obtenir des variables à partir de méthodes PHP est un scénario courant dans le développement Web. Grâce à Ajax, la page peut être obtenue dynamiquement sans actualiser les données. Dans cet article, nous présenterons comment utiliser Ajax pour obtenir des variables à partir de méthodes PHP et fournirons des exemples de code spécifiques. Tout d’abord, nous devons écrire un fichier PHP pour gérer la requête Ajax et renvoyer les variables requises. Voici un exemple de code pour un simple fichier PHP getData.php :

Comment résoudre le problème de l’erreur 403 jQueryAJAX ? Lors du développement d'applications Web, jQuery est souvent utilisé pour envoyer des requêtes asynchrones. Cependant, vous pouvez parfois rencontrer le code d'erreur 403 lors de l'utilisation de jQueryAJAX, indiquant que l'accès est interdit par le serveur. Cela est généralement dû aux paramètres de sécurité côté serveur, mais il existe des moyens de résoudre le problème. Cet article explique comment résoudre le problème de l'erreur 403 jQueryAJAX et fournit des exemples de code spécifiques. 1. faire
