Jak udělat aktivní menu u jednostránkového webu pomocí JavaScriptu

Nedávno jsem řešil takový problém. Dělal jsem jednostránkový web. Takový jednostránkový web (anglicky se mu říká single page website) je web, na kterém jsou všechny informace na jediné stránce a když klikáte na jednotlivé odkazy v navigačním menu, tak se posouváte níže dolů po stránce. Udělat takový web je snadné. Prostě si nakódujete jedinou stránku, do ní vložíte obsah a na zvolené místo v horní části webu si umístíte menu. Z menu ovšem neodkazujete na další postránky webu, protože je web jednostránkový, nýbrž odkazujete na některé prvky v obsahu (typicky to může být třeba nadpis nebo div). Říká se tomu kotvy nebo také anchor odkazy a lze to realizovat i ve většině wysiwyg editorů. Důležité je, aby se shodoval název kotvy s id prvku na který odkazujete. Před název kotvy do menu vložíte křížek #nazev-odkazu. Do tagu nadpisu vložíte id=”nazev odkazu”

 

Menu může vypadat třeba takto:

 

 

 

 

 

 

 

 

A obsah stránky bude vypadat třeba takhle:

………. obsah sekce ……….

 

………. obsah sekce ……….

 

………. obsah sekce ……….

 

………. obsah sekce ……….

 

Jediný problém se objeví, když potřeba, aby se vám v navigaci barveně podbarvil odkaz kategorie, ve které právě jste. Jde to ale vyřešit jednoduše pomocí JavaScriptu.

 

Stačí, když si vložíte mezi tagy head a /head níže uvedený JavaScript.

 

A teď už stačí jenom právě navštívenému odkazu nějakou vlastnost v CSS. V uvedeném scriptu je použití třída .active

 

A je to! Aktivní odkaz právě navštívené stránky bude červený. JavaScript jsem převzal ze skvělého webu http://jsfiddle.net Najdete tam podrobnější popis problematiky.

Share this:

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>