Javascript
Pagina: « vorige 1 2 3 volgende »
Misschien te simpel gedacht...
Heb nu zo... Maar achtergrond kleur verandert niet...:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?
// Het begin van definieren staat er wel gewoon
if (document.location == 'http://localhost/samengeroepen/') {
document.getElementById('Home').style.backgroundColor = '#FFCC00';
document.getElementById('Home').style.color = '#000000';
}
else {
for (i = 0; i < n; i++) {
if (document.location == x[i].href) { // checken welk menu-item naar de huidige pagina verwijst
x[i].style.backgroundColor = '#FFCC00'; // indien gevonden, kleuren aanpassen
x[i].style.color = '#000000';
break; // onzin om verder te zoeken
}
}
}
?>
// Het begin van definieren staat er wel gewoon
if (document.location == 'http://localhost/samengeroepen/') {
document.getElementById('Home').style.backgroundColor = '#FFCC00';
document.getElementById('Home').style.color = '#000000';
}
else {
for (i = 0; i < n; i++) {
if (document.location == x[i].href) { // checken welk menu-item naar de huidige pagina verwijst
x[i].style.backgroundColor = '#FFCC00'; // indien gevonden, kleuren aanpassen
x[i].style.color = '#000000';
break; // onzin om verder te zoeken
}
}
}
?>
Of doe ik nog iets fout... (De php tags staan er natuurlijk niet, maar wordt het wat overzichtelijker van)
Edit: Ook niet als ik een andere naam dan Home in vul trouwens...
Gewijzigd op 09/12/2005 20:54:00 door Willem Jan Z
<kuch, kuch, kuch> :-)
Je bedoelt?
Ik had net al iets gepost. Ik heb ooit een script gemaakt dat volgens mij precies doet wat jij wilt. Maar kijk eerst maar eens op die link op de laatste post van pagina 1 van dit topic. Als dat is wat je bedoelt, geeft ik je het script graag. Het is overigens JavaScript, zoals jij ook had verzonnen.
Is toch echt jouw stukje script...
Edit:
Heb trouwens wel een andere probleem ontdekt...
Mijn console geeft:
Fout ChangeMenu is not defined
Dus hij ziet de functie gewoon niet ofzo :S
Gewijzigd op 09/12/2005 21:05:00 door Willem Jan Z
Willem-Jan:
Kijk jij dan eens goed naar het stukje script wat ik post :P
Is toch echt jouw stukje script...
Is toch echt jouw stukje script...
Heeee, da's leuk :-)))
Kijken of we het op kunnen lossen.
Nu nog kijken of het lukt hem aan te passen zoals ik wil...
je moet je JavaScript beginnen met:
window.onload = init;
en dan zo:
function init () {
var x = document.getElementsByTagName ('a');
var n = x.length;
if (document.location == 'http://www.jouwadres.nl/') {
document.getElementById('default_id').style.backgroundColor = '#FFCC00';
document.getElementById('default_id').style.color = '#000000';
}
else {
for (i = 0; i < n; i++) {
if (document.location == x.href) { // checken welk menu-item naar de huidige pagina verwijst
x.style.backgroundColor = '#FFCC00'; // indien gevonden, kleuren aanpassen
x.style.color = '#000000';
break; // onzin om verder te zoeken
}
}
}
}
Alleen nu heb ik wel het probleem, dat als iemand niet op de link klinkt. Maar via URL binnenkomt dat het hoofzakelijke menu niet geactiveerd wordt...
Misschien dan toch maar mijn menu uitgebreid maken...
Edit: Ik zie trouwens dat als je via URL binnenkomt op een hoofdlink, dat die wel actief wordt... Snap niet hoe, maar vind wel fijn :D
Gewijzigd op 09/12/2005 21:15:00 door Willem Jan Z
if (document.location == 'http://www.jouwadres.nl/')
jouw homepage-adres invult, wat gebeurt er dan?
edit: heb je test-url?
Gewijzigd op 09/12/2005 21:17:00 door Jan Koehoorn
Dit is de oude site:
http://www.samengeroepen.nl
Daar zie je dat er veel meer links zijn.
En dan wou ik nu oplossen door boven de hoofdpagina, een soort klein menu te plaatsen, omdat zo'n groot menu links te veel ruimte inneemt (naar mijn idee). Maar dan zou de 'hoofdlink' niet geactiveerd worden, omdat die link niet openstaat... Maar dat wil ik eigenlijk wel.
Ik probeer wel het menu wel helemaal links te zetten, maar dan de submenu's iets kleiner, zodat het niet te veel ruimte in neemt... En jouw systeem toch nog werkt...
Edit:
Test-URL
Gewijzigd op 09/12/2005 21:19:00 door Willem Jan Z
Alleen werkte dat bij mij niet op de "home" link, want die linkte natuurlijk naar index.php en als mensen je adres intypen, doen ze daar meestal geen index.php achteraan. Vandaar die eerste:
if (document.location == 'http://www.jouwadres.nl/')
Ik ben alleen even aan het nadenken hoe ik het dan ga aanpakken. Want met zo'n sub-menu (waar die dan ook komt) wil ik wel dat het hoofdlink ook geactiveerd moet blijven/worden...
En ik zou zo 1-2-3 niet weten hoe ik dat moet aanpakken...
<script language="javascript" type="text/javascript">
ChangeMenu('Bestuur');
</script>
Vlak nadat je je contentdiv opent
Willem-Jan:
Want met zo'n sub-menu (waar die dan ook komt) wil ik wel dat het hoofdlink ook geactiveerd moet blijven/worden...
En ik zou zo 1-2-3 niet weten hoe ik dat moet aanpakken...
En ik zou zo 1-2-3 niet weten hoe ik dat moet aanpakken...
Ik heb niet het hele topic gevolgd. Wat wil je met submenu's doen?
Maar ik denk trouwens niet dat mijn eisen goed te combineren zijn met jouw script..
Ja dan wordt het andere eisen, of ander script.
Voorbeeld
Maar het menu is nu zo lang dat ik erg veel lege alineas moet maken om korte pagina's toch onder het menu uit te laten komen? Is daar een makkelijke oplossing voor?
Behalve min-height, aangezien ons aller lieve IE dat niet ondersteunt...
Heb het nu zo opgelost: Maar het menu is nu zo lang dat ik erg veel lege alineas moet maken om korte pagina's toch onder het menu uit te laten komen? Is daar een makkelijke oplossing voor?
Behalve min-height, aangezien ons aller lieve IE dat niet ondersteunt...
<hr style="visibility:hidden;clear:both;width:100%;"/>
Werkt bijna bij alles :P
Gewijzigd op 09/12/2005 22:08:00 door Jelmer -
Ik doe het maar met een vast hoogte van mijn content div, en dan overflow:auto; Niet erg netjes, maar is even niet anders denk ik :S
Gewijzigd op 09/12/2005 22:17:00 door Willem Jan Z