Za ovaj dio o aktivnoj stranici, pretpostavimo da imas div sa identifikatorom nav i u njemu linkove u tagu a... modificiraj ako si radio sa UL/OL ili slicno...
Code:
function setActive() {
aObj = document.getElementById('nav').getElementsByTagName('a');
for(i=0;i<aObj.length;i++) {
if(document.location.href.indexOf(aObj[i].href)>=0) {
aObj[i].className='active';
}
}
}
Dakle to ukratko dohvati div sa identifikatorom nav, pa onda sve tagove a, izvrti ih u petlji i doda class active ako je to trenutna stranica.
I onda samo dodas u script tag na kraju dokumenta (tako da se okine kad se cijeli page ucita):
Code:
window.onload = setActive;
Sto se mijenjanja u razlicite boje tice, ne da mi se to pisat, ali princip je slican. Kazes javascriptu da na hover misa iznad taga dohvati innerHTML linka (znaci npr. imas <a class="navlink" href="http://www.dot.com/page1/"> PAGE 1 </a> ) - u ovom slucaju ce to bit tekst PAGE 1, i onda napravis switch case spiku da za svaki link u meniju promjenis klasu u neku drugu, ovisno o boji... npr. this->className = blue za PAGE 1, red za PAGE 2 i slicno... Ne sjecam se tocne sintakse, znam da je u jQueryu nesto u djiru addClass("class1 class2");