Geachte medetweakers,
Ik heb een probleempje met mijn javascript. Het is een simpel scriptje maar ik kom er niet uit. Ik zal eerst even uitleggen wat de situatie is:
Ik ben momenteel bezig het een nieuw design voor een website, en deze website maakt gebruik van tabjes voor de pagina's. Een tabje bestaat uit een div met een background image, en kan in drie verschillende 'staten' zijn:
-Actief (Dan staat de achtergrond afbeelding op "tabnaam_active.gif")
-Niet Actief (Geen afbeelding)
-mouseover (Achtergrond afbeelding staat op "tabnaam_over.gif")
Nu heb ik een probleem met het laatste stuk. Om de afbeelding te veranderen heb ik gebruikgemaakt van onmouseover en onmouseout. De onmouseover en onmouseout worden op de volgende manier aangeroepen:
Ik had eerst een script dat wel werkte maar 1 probleem had. Als je met de muis over de active tab ging werd daarna ook die tab op "geen achtergrond" gezet. Die code staat hieronder:
Omdat het bovenstaande niet het gewenste resultaat gaf, dacht ik dat vergelijk ik de huidige style.backgroundImage waarde om te kijken of deze actief is. Om vervolgens als deze ook daadwerkelijk actief is de achterground zo te laten. Dat is de volgende code:
Mij probleem is dus dat de vergelijking niet werkt. Ik heb al hulp gevraagd aan de php / js expert hierzo maar die kon zo snel ook niks vinden. Tevens heb ik op internet rondgezocht om te kijken of je backgroundimage waarden kan vergelijken maar kon daar niet veel over vinden.
Ik heb gekeken of de waarden in de vergelijking van style.backgroundImage ook daadwerkelijk zo zijn en dat klopt is zo. Dus de vergelijking zou in principe "true" zijn.
Iemand een suggestie?
Als er iets onduidelijk is laat maar weten dan pas ik het even aan.
Ik heb een probleempje met mijn javascript. Het is een simpel scriptje maar ik kom er niet uit. Ik zal eerst even uitleggen wat de situatie is:
Ik ben momenteel bezig het een nieuw design voor een website, en deze website maakt gebruik van tabjes voor de pagina's. Een tabje bestaat uit een div met een background image, en kan in drie verschillende 'staten' zijn:
-Actief (Dan staat de achtergrond afbeelding op "tabnaam_active.gif")
-Niet Actief (Geen afbeelding)
-mouseover (Achtergrond afbeelding staat op "tabnaam_over.gif")
Nu heb ik een probleem met het laatste stuk. Om de afbeelding te veranderen heb ik gebruikgemaakt van onmouseover en onmouseout. De onmouseover en onmouseout worden op de volgende manier aangeroepen:
JavaScript:
1
2
| onMouseOver="showOver('support')" onMouseOut="hideOver('support')" |
Ik had eerst een script dat wel werkte maar 1 probleem had. Als je met de muis over de active tab ging werd daarna ook die tab op "geen achtergrond" gezet. Die code staat hieronder:
JavaScript:
1
2
3
4
5
6
| function showOver(str){ document.getElementById(str).style.backgroundImage = "url('images/"+ str +"_over.gif')"; } function hideOver(str){ document.getElementById(str).style.backgroundImage = ""; } |
Omdat het bovenstaande niet het gewenste resultaat gaf, dacht ik dat vergelijk ik de huidige style.backgroundImage waarde om te kijken of deze actief is. Om vervolgens als deze ook daadwerkelijk actief is de achterground zo te laten. Dat is de volgende code:
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| function showOver(str){ if (document.getElementById(str).style.backgroundImage == "url('images/"+ str +"_active.gif')") { document.getElementById(str).style.backgroundImage = "url('images/"+ str +"_active.gif')"; } else { document.getElementById(str).style.backgroundImage = "url('images/"+ str +"_over.gif')"; } function hideOver(str){ if (document.getElementById(str).style.backgroundImage == "url('images/"+ str +"_over.gif')") { document.getElementById(str).style.backgroundImage = ""; } else { document.getElementById(str).style.backgroundImage = "url('images/"+str+"_active.gif')"; } |
Mij probleem is dus dat de vergelijking niet werkt. Ik heb al hulp gevraagd aan de php / js expert hierzo maar die kon zo snel ook niks vinden. Tevens heb ik op internet rondgezocht om te kijken of je backgroundimage waarden kan vergelijken maar kon daar niet veel over vinden.
Ik heb gekeken of de waarden in de vergelijking van style.backgroundImage ook daadwerkelijk zo zijn en dat klopt is zo. Dus de vergelijking zou in principe "true" zijn.
Iemand een suggestie?
Als er iets onduidelijk is laat maar weten dan pas ik het even aan.
C2D E6600 - 2048MB Kingston - Sapphire HD2900XT - 200Gb Samsung - Asus P5B-E