2010-10-19 4 views
4

J'ai un système de navigation sur mon site qui utilise javascript pour faire glisser les divs horizontalement empilés vers la gauche et vers la droite. J'essaie de faire mieux fonctionner le site avec javascript désactivé, donc j'ai un deuxième système de navigation qui utilise des valeurs de hachage pour «aller à» la section appropriée.

Le problème se pose si quelqu'un est sur http://mysite.com/#page2 puis active javascript. La page se recharge dans la section # page2, ce qui provoque le dysfonctionnement du système de navigation activé par javascript. par exemple. ça recharge en pensant que la page est à la section 1 quand elle affiche réellement la section #whatever.

J'ai essayé d'ajouter parent.location.hash = ''; mais quand la page est rechargée, elle reste sur n'importe quelle section.

Avez-vous des idées pour que la page soit complètement actualisée lorsque javascript est activé?Actualiser la page lorsque le hash d'url est présent

Répondre

0

N'a pas testé cela mais, vous pouvez avoir une variable d'état javascript. Lorsque javascript s'exécute d'abord, il définit la variable d'état sur true, vérifie si l'URL est la base ou une section de page, puis recharge l'URL racine (mysite.com). Si la variable d'état est déjà vraie, elle ne rechargera pas la page (de sorte que vous ne rechargez pas continuellement). Étant donné que la variable est dans le moteur JavaScript, elle ne sera pas encore définie sur true si javascript est activé.

Here est un exemple d'utilisation de javascript pour analyser l'URL. Dans votre cas, vous seriez à la recherche du symbole #.

Questions connexes