2009-12-04 6 views
0

Je pense que cette question est très facile mais je ne sais pas si j'ai raison. Je suis un oldschoool html, codeur php. Je veux utiliser ce type de navigation: http://www.cssportal.com/horizontal-menus/13styles.htmCss Html JavaScript - Navigation Mettez en surbrillance actuellement sélectionné Menu

Jusqu'à présent, pas de problème. J'ai une page php dynamique et je veux utiliser ce menu. Il n'y a pas de problème sans cette ligne dans le code HTML partie:

<li><a href="" title="" class="current"><span>LINK</span></a></li> 

Le problème est la classe. Quel est le moyen le plus intelligent de détecter quel lien est actuellement à jour? Je le ferais de cette façon. Je voudrais écrire un script php comme ce code pseudo:

if acutaldocument == "link1.html" then echo "class='current' "; 

Mais je pense que ce n'est pas la façon la plus intelligente. Ou ai-je raison? Merci

Répondre

1

Il y a beaucoup d'options ...

Vous pouvez utiliser des cookies de session, JavaScript, vous pouvez passer un identifiant sur la fin de l'URL (par exemple.? Nav = 2) ou analyser l'URL et vérifier contre elle. ..

tous travaillent ... ils ont tous là pour et le contre ... tout dépend de la façon dont votre page est mis en place ...

+0

Analyse avec php, comme je l'ai dit? Il n'y a pas de façon plus intelligente – SurfingCat

+0

Est-ce une page et vous changez le contenu de la page? ou sont ces différentes pages? Si c'est le premier, ce que cela ressemble ... vous pouvez utiliser un cookie, un script ... ou si l'URL change/variable passée, vous pouvez vérifier/analyser. Si c'est le dernier, alors j'utiliserais juste une variable avant que n'importe quelles informations d'en-tête soient tirées et partent de là ... juste dépend de votre installation. – luckykind

1

Attribuez un ID à chaque balise body. Dites, vous donnez à l'étiquette du corps de la page About l'ID "about". Donnez des ID pour toute votre navigation <li> s aussi. Dites, vous donnez « à propos de » id à la navigation <li>

Dans votre fichier CSS, faites ceci:

body#about li#about { 
    // apply differentiating style here... 
} 

Vous pouvez continuer à le faire pour toutes les autres pages aussi. Et seulement lorsque l'ID de corps et l'ID <li> correspondent, le style est appliqué.

+0

Le problème est, je suis arrivé une seule page php avec contenu dynamique. Comment puis-je donner à cette page le bon ID de corps? – SurfingCat

+0

Vous pouvez analyser l'URL. Chuck de l'extension et utiliser le nom de fichier comme ID? – jeffreyveon

Questions connexes