Chaque page de la navigation est le même morceau de HTML lié via la balise d'arrière-plan. Après avoir cliqué sur la navigation, j'ai changé la couleur via js, mais lorsque j'ai cliqué pour accéder à une page, la couleur modifiée par js est devenue invalide. moi ceci Comment résoudre ce problème?
Je vais y répondre moi-même. Cela n'a pas besoin d'être aussi compliqué que ce que vous avez écrit. Ajoutez simplement un morceau de CSS à chaque page
.Enregistrez quoi, bon sang, j'ai entré la page a à partir de la barre de navigation, je l'ai fermée, puis j'ai entré la page b à partir de la barre d'adresse. Allez-vous mettre en surbrillance la page a pour moi à ce moment-là ?
Écrivez une fonction d'analyse commune à toutes les pages et utilisez directement l'adresse de navigation pour correspondre au href
Dites-moi l'idée et ajoutez le jugement js à chaque page
Quelques façons :
La barre de navigation a son propre iframe ;
Utilisez sessionStorage / localStorage pour enregistrer l'état
Page de saut avec paramètres URL&active =xxx;
Utiliser le spa ne saute pas vraiment à la page
En regardant les questions du répondeur, je suppose que 2 ou 3 conviennent mieux
Il n'est pas nécessaire d'utiliser JS, utilisez simplement le nom de classe CSS. Ajoutez un nom de classe à chaque navigation et placez-le dans le fichier CSS de cette navigation
.Enregistrez-le localement
L'arrière-plan peut déterminer à quelle page se trouve la page actuelle, puis ajouter une catégorie. C'est plus pratique.
Enregistrez localement, et lorsque vous entrez à nouveau dans la page, lisez le cache et portez un jugement
Enregistrez le statut dans le cookie.
L'enregistrement dans une session est également possible, mais cela nécessite la coopération du développement back-end.
Ajoutez un actif à la classe li, définissez la couleur de la police de l'actif et ajoutez dynamiquement des classes à chaque li !