webForumDet fria alternativet

Vad är fel?

JavaScriptur Javascript

3 svar · 163 visningar · startad av daPhil

Medlem sedan apr. 2001151 inlägg
Frågan#1

Ok, jag är värsta nybörjaren p JavaScript, men jag trodde jag hade tänkt rätt med denna kod... Den fungerar inte, kan någon tala om för mig vad som e fel med detta:

<html>
	<script language="JavaScript">
			
			function ClickCol(obj)	{

									var actColor = "FF0000"
									var inactColor = "000000"
									
									If (obj == "a") 	{ 	
															a.style.color=actColor
															b.style.color=inactColor
															c.style.color=inactColor 
														}
														
									If (obj == "b") 	{ 	
															a.style.color=inactColor
															b.style.color=actColor
															c.style.color=inactColor 
														}
														
									If (obj == "c") 	{ 	
															a.style.color=inactColor
															b.style.color=inactColor
															c.style.color=actColor 
														}
									}
		
	</script>
		<br>
		<br>
		<a href="#" id="a" onClick="JavaScript:ClickCol(this)">LinkONE</a>
		<br>
		<br>
		<a href="#" id="b" onClick="JavaScript:ClickCol(this)">LinkTWO</a>
		<br>
		<br>
		<a href="#" id="c" onClick="JavaScript:ClickCol(this)">LinkTHREE</a>
	</body>	
</html>

Tack!

PS: Det är inte mellanslag i "Java Script" det blir bara så här på forumet. DS.

Medlem sedan feb. 20022 594 inlägg
#2

Använd ; efter

var actColor = "FF0000"
var inactColor = "000000"

OSV.

och efter

javascript:ClickCol(this)

Medlem sedan apr. 2001151 inlägg
#3

Det fungerar fortfarande inte.

Medlem sedan juni 20004 308 inlägg
#4

Det du skickar till funktionen ClickCol är en objektreferens (skapat av this) och alltså inte en sträng ("a") vilket du jämför med. Sedan är JavaScript känslig på case "If" skall vara "if".

En rättat (men icke optimerad) kod;

	<script language="JavaScript">
			
			function ClickCol(obj)	{

									var actColor = "FF0000"
									var inactColor = "000000"
									
									if (obj == document.getElementById("a")){ 	
															document.getElementById("a").style.color=actColor
															document.getElementById("b").style.color=inactColor
															document.getElementById("c").style.color=inactColor 
														}
														
									if (obj == document.getElementById("b")){ 	
															document.getElementById("a").style.color=inactColor
															document.getElementById("b").style.color=actColor
															document.getElementById("c").style.color=inactColor 
														}
														
									if (obj == document.getElementById("c")){ 	
															document.getElementById("a").style.color=inactColor
															document.getElementById("b").style.color=inactColor
															document.getElementById("c").style.color=actColor 
														}
									}
		
	</script>
134 ms totalt · 3 externa anrop · v20260731065814-full.25f56b17
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)