Kada imate sajt koji se sastoji od ogromnog broja stranica, problem za posetioca sajta moลพe biti navigacija. U tom sluฤaju kao jedno od reลกenja moลพemo koristiti navigacionu liniju u obliku drop down menija. Kao primer ฤemo navesti sajt neke firme koja se bavi prodajom prehrambenih artikala. Te, da bi se posetilac lakลกe snalazio, proizvode smo podelili u grupe, a o svakoj grupi proizvoda imamo recimo tri razliฤite stranice sa razliฤitim sadrลพajem. Uzmimo da imamo sledeฤe grupe proizvoda, i svakoj od njih ฤemo radi olakลกavanja programskog dela dodeliti po jedno latiniฤno slovo:
- ลฝitarice – slovo „z“
- Mleฤni proizvodi – slovo „m“
- Hemija – slovo „h“
- Lista proizvoda – ลกifra „lista“
- Cene – ลกifra „cene“
- Podrลกka – ลกifra „podrska“
<FORM name="navform">
<SELECT name="grupe">
<OPTION VALUE="x" SELECTED>Izaberite grupu
<OPTION VALUE="z">Zitarice
<OPTION VALUE="m">Mlecni proizvodi
<OPTION VALUE="h">Hemija
</SELECT>
<SELECT name="kategorija">
<OPTION VALUE="x" SELECTED>Izaberite info
<OPTION VALUE="lista">Lista proizvoda
<OPTION VALUE="cene">Cene
<OPTION VALUE="podrska">Podrska
</SELECT>
<INPUT TYPE="button" NAME="start" VALUE="Start"
onClick="Navigate();">
</FORM>
ล ta deลกava kada posetilac doฤe na stranicu? Prvo, sa prve padajuฤe liste bira grupu proizvoda, a zatim sa druge liste ลพeljeni tip informacije. Kada napravi izbor, klikne dugme „Start“. Kada je kliknuo dugme, dogaฤa se dogaฤaj „onClick“ koji izaziva pokretanje funkcije „Navigate“. Evo i same funkcije „Navigate“, koju treba da postavite izmeฤu „HEAD“ tagova stranice:
function Navigate() {
grp = document.navform.grupe.selectedIndex;
kat = document.navform.kategorija.selectedIndex;
vredgrp = document.navform.grupe.options[grp].value;
vredkat = document.navform.category.options[kat].value;
if (vredgrp == "x" || vredkat == "x") return;
window.location = vredgrp + "_" + vredkat + ".htm";
}
ล ta radi ova funkcija? Prvo se oฤitaju indeksi izabranih opcija i smeลกtaju u promenljive, a zatim se u druge promenljive smeลกta string podatak iz osobine „VALUE“. Kombinacijom dve vrednosti „VALUE“ dobijamo naziv same stranice koja sadrลพi detaljnu informaciju o odreฤenoj grupi proizvoda. Na primer, grupa proizvoda „Hemija“ (sa ลกifrom h) i informacija o cenama (sa ลกifrom „cene“) grade string:
„h_cene.htm“
Na ovaj naฤin smo odveli posetioca na stranicu „h_cene.htm“. Izuzetak je kada se funkciji proslede dve „x“ ลกifre, koje se proveravaju u pretposlednjoj liniji. Na ovaj naฤin smo se obezbedili od toga da kada posetilac ne izabere ni jednu grupu, ni vrstu informacija, a klikne dugme „Start“. Tada se niลกta ne deลกava.
Pratite Krstaricu na www.krstarica.com