Avatar billede kledal Nybegynder
26. august 2005 - 12:58 Der er 12 kommentarer og
1 løsning

få skjult et img tag ved hjælp af javascript

strScript6=" onclick=""SetMenuColor6();"""

strOut=strOut & vbCrLf & "<script>"
strOut=strOut & vbCrLf & "function SetMenuColor6()"
strOut=strOut & vbCrLf & "document.getElementById('arrow1').style.visibility = ""hidden"";"
strOut=strOut & vbCrLf & "document.getElementById('arrow2').style.visibility = ""hidden"";"
strOut=strOut & vbCrLf & "document.getElementById('arrow3').style.visibility = ""hidden"";"
strOut=strOut & vbCrLf & "document.getElementById('arrow4').style.visibility = ""hidden"";"
strOut=strOut & vbCrLf & "document.getElementById('arrow5').style.visibility = ""hidden"";"
strOut=strOut & vbCrLf & "}"
strOut=strOut & vbCrLf & "</script>"

strOut = strOut & "<img ""id=arrow6"" src=""images/FOSS_35_rightarrow.jpg"" width=7 height=11 border=0 style=""visibility:hidden;"">"
strOut = strOut & "<a id=""6"" class=topmenulink href=""" & solutionRedirect & "?page=5"" target=test" & strScript6 & ">"
strOut = strOut & "  <u>testpage</u></a>"
Avatar billede kledal Nybegynder
26. august 2005 - 13:01 #1
gør det lige lidt mere overskueligt :-)

Jeg har nogle img tags, har ikke indsat allesammen i koden nedenfor, men de er allesammen lavet på samme måde som tag'et med id=arrow6, borset fra at de har id=arrow1, arrow2, arrow3, arrow4, arrow5. Mit problem er at javascriptet ikke skjuler img tag'ene når jeg aktivere det, hvad gør jeg galt?

strScript6=" onclick=""SetMenuColor6();"""

<script>
function SetMenuColor6()
document.getElementById('arrow1').style.visibility = ""hidden"";
document.getElementById('arrow2').style.visibility = ""hidden"";
document.getElementById('arrow3').style.visibility = ""hidden"";
document.getElementById('arrow4').style.visibility = ""hidden"";
document.getElementById('arrow5').style.visibility = ""hidden"";
}
</script>

<img ""id=arrow6"" src=""images/FOSS_35_rightarrow.jpg"" width=7 height=11 border=0 style=""visibility:hidden;"">
<a id=""6"" class=topmenulink href=""" & solutionRedirect & "?page=5"" target=test" & strScript6 & ">
<u>testpage</u></a>
Avatar billede kledal Nybegynder
26. august 2005 - 13:02 #2
der er naturligvis en { efter linjen "function SetMenuColor6()"
Avatar billede roenving Novice
26. august 2005 - 13:03 #3
Hvad er det, du ønsker ?-)

-- det ser nemlig umiddelbart ud til, at du forsøger noget ganske uhensigtsmæssigt !-)

-- og der er syntaks-fejl ved dit id i img-tagget:

strOut = strOut & "<img id=""arrow6"" src="" ...

-- og så er et id, som starter med et tal ikke tilladt (selv om der vist er en browser, som godkender det !-)
Avatar billede softspot Forsker
26. august 2005 - 13:03 #4
<script>
function SetMenuColor6()
document.getElementById('arrow1').style.visibility = "hidden";
document.getElementById('arrow2').style.visibility = "hidden";
document.getElementById('arrow3').style.visibility = "hidden";
document.getElementById('arrow4').style.visibility = "hidden";
document.getElementById('arrow5').style.visibility = "hidden";
}
</script>
Avatar billede roenving Novice
26. august 2005 - 13:09 #5
Hvis du nu overfører nummeret som parameter skal du kun have scriptet een gang:

<script type="text/javascript">
function setMenuColor(num){
  for(i=1;7>i;i++){
    document.getElementById('arrow'+i).style.visibility = 'hidden';
  }
  document.getElementById('arrow'+num).style.visibility = 'visible';
}
</script>

-- og koden bliver så sådan noget som:

<img id=""arrow4"" src=""images/FOSS_35_rightarrow.jpg"" width=7 height=11 border=0 style=""visibility:hidden;"">
<a id=""a4"" class=topmenulink href=""" & solutionRedirect & "?page=5"" target=""test"" onclick=""setMenuColor(4);""">
<u>testpage</u></a>
<img id=""arrow5"" src=""images/FOSS_35_rightarrow.jpg"" width=7 height=11 border=0 style=""visibility:hidden;"">
<a id=""a5"" class=topmenulink href=""" & solutionRedirect & "?page=5"" target=""test"" onclick=""setMenuColor(5);""">
<u>testpage</u></a>
<img id=""arrow6"" src=""images/FOSS_35_rightarrow.jpg"" width=7 height=11 border=0 style=""visibility:hidden;"">
<a id=""a6"" class=topmenulink href=""" & solutionRedirect & "?page=5"" target=""test"" onclick=""setMenuColor(6);""">
<u>testpage</u></a>
Avatar billede kledal Nybegynder
26. august 2005 - 13:20 #6
hej roenving, ja det gjorde jeg også i starten, men det gad den ikke.
Problemet er at jeg skal have det til at virke på alle 6 img.
altså er der nogen hvor arrow3 skal vises og resten skal skjules.
Og scriptet gør det ikke, det skjuler ingen af dem
Avatar billede roenving Novice
26. august 2005 - 13:27 #7
Har du prøvet at lave et simpelt html-dokument:

<script type="text/javascript">
function setMenuColor(num){
  for(i=1;7>i;i++){
    document.getElementById('arrow'+i).style.visibility = 'hidden';
  }
  document.getElementById('arrow'+num).style.visibility = 'visible';
}
</script>

-- og koden bliver så sådan noget som:

<br>
<img id="arrow1" src="../billede.jpg" width="7" height=11" border="0" style="visibility:hidden;">
<a id="a1" class="topmenulink" href="noget?page=1" target="test" onclick="setMenuColor(1);return false;">
<u>testpage</u></a><br>
<img id="arrow2" src="../billede.jpg" width="7" height=11" border="0" style="visibility:hidden;">
<a id="a2" class="topmenulink" href="noget?page=2" target="test" onclick="setMenuColor(2);return false;">
<u>testpage</u></a><br>
<img id="arrow3" src="../billede.jpg" width="7" height=11" border="0" style="visibility:hidden;">
<a id="a3" class="topmenulink" href="noget?page=3" target="test" onclick="setMenuColor(3);return false;">
<u>testpage</u></a><br>
<img id="arrow4" src="../billede.jpg" width="7" height=11" border="0" style="visibility:hidden;">
<a id="a4" class="topmenulink" href="noget?page=4" target="test" onclick="setMenuColor(4);return false;">
<u>testpage</u></a><br>
<img id="arrow5" src="../billede.jpg" width="7" height=11" border="0" style="visibility:hidden;">
<a id="a5" class="topmenulink" href="noget?page=5" target="test" onclick="setMenuColor(5);return false;">
<u>testpage</u></a><br>
<img id="arrow6" src="../billede.jpg" width="7" height=11" border="0" style="visibility:hidden;">
<a id="a6" class="topmenulink" href="noget?page=6" target="test" onclick="setMenuColor(6);return false;">
<u>testpage</u></a>

-- måske er dit problem, at siden reloader ?-)
Avatar billede kledal Nybegynder
26. august 2005 - 13:34 #8
det er sandt at siden reloades hver gang, men det skal den også i den enedelige løsning, så det nytter ikke noget blot at lave et simpelt html dokument, desværre
Avatar billede roenving Novice
26. august 2005 - 13:38 #9
Skal du så vise en af ikonerne ved hver side ?-)

-- så f.eks. med ovenstående slags kode:

<script type="text/javascript">
window.onload = function(){
  var num = location.search.replace(/^.*?(\d)$/,"$1");
  document.getElementById('arrow'+num).style.visibility = 'visible';
}
</script>
Avatar billede roenving Novice
26. august 2005 - 13:43 #10
-- og så skal du selvfølgelig fjerne onclick-tingen på links !-)
Avatar billede kledal Nybegynder
26. august 2005 - 14:00 #11
jeg fik løst det med lidt flere forsøg, roenving svar så skal du få points, det hjalp at gøre funktionen mere overskuelig igen, og så opdagede jeg nogle dumme tastefejl.
Avatar billede roenving Novice
26. august 2005 - 14:01 #12
Oki '-)

-- men behold selv langt de fleste af dine point !-)
Avatar billede roenving Novice
29. august 2005 - 12:43 #13
Tak for point ;~}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester