17. december 2003 - 13:13
Der er
10 kommentarer og 1 løsning
foldud skal ha 2 tryk??
Har følgende script som virker fint i det lange løb, men ved load af side skal linket have 2 tryk for at kickstarte!? Er på herrens mark!! <style> .showit { display: block; } .hideit { display: none; } .lineit { display: inline; } </style> <script type="text/javascript"> <!-- function findObj(theObj, theDoc) { var p, i, foundObj; if(!theDoc) theDoc = document; if( (p = theObj.indexOf("?")) > 0 && parent.frames.length) { theDoc = parent.frames[theObj.substring(p+1)].document; theObj = theObj.substring(0,p);} if(!(foundObj = theDoc[theObj]) && theDoc.all) foundObj = theDoc.all[theObj]; for (i=0; !foundObj && i < theDoc.forms.length; i++) foundObj = theDoc.forms[i][theObj]; for(i=0; !foundObj && theDoc.layers && i < theDoc.layers.length; i++) foundObj = findObj(theObj,theDoc.layers[i].document); if(!foundObj && document.getElementById) foundObj = document.getElementById(theObj); return foundObj; } function showHideLayers() { var i, visStr, obj, args = showHideLayers.arguments; for (i=0; i<(args.length-2); i+=3) { if ((obj = findObj(args[i])) != null) { visStr = args[i+2]; if (obj.style) { obj = obj.style; if(visStr == 'show') visStr = 'visible'; else if(visStr == 'hide') visStr = 'hidden';} obj.visibility = visStr;} } } function skiftKlasse(){ var i,x,tB,j=0,tA=new Array(),arg=skiftKlasse.arguments; if(document.getElementsByTagName){for(i=4;i<arg.length;i++){tB=document.getElementsByTagName(arg[i]); for(x=0;x<tB.length;x++){tA[j]=tB[x];j++;}}for(i=0;i<tA.length;i++){ if(tA[i].className){if(tA[i].id==arg[1]){if(arg[0]==1){ tA[i].className=(tA[i].className==arg[3])?arg[2]:arg[3];}else{tA[i].className=arg[2];} }else if(arg[0]==1 && arg[1]=='none'){if(tA[i].className==arg[2] || tA[i].className==arg[3]){ tA[i].className=(tA[i].className==arg[3])?arg[2]:arg[3];} }else if(tA[i].className==arg[2]){tA[i].className=arg[3];}}}} } //--> </script> <a href="#" onclick="skiftKlasse(1,'mn1','showit','hideit','div');skiftKlasse(1,'but1')" class="8">Navn og Adresse</a> <div id="mn1" class="showit">bla bla</div>
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
17. december 2003 - 13:15
#1
og ja.. det magler lige ') i skiftKlasse(1,'but1" .... er rettet :0)
17. december 2003 - 13:29
#2
Jeg har ikke nærstuderet koden, men jeg kunne forestille mig det er den typiske fejl. display-property der er sat i CSS, kan ikke læses af javascript, derfor virker dine if-sætninger ikke. Du er nødt til at sætte hver objects style i javascript, hvis du vil læse det.
17. december 2003 - 13:30
#3
Smadder rart med de der (DreamWeaver ?-) funktioner, som bare er nemme at dechiffrere !-( Generelt kan det i hvert fald siges, at det er en tåbelig idé at skifte klasse i et document, da css-fortolkeren så skal genopbygge sit DOM-træ !-) Men ellers ser det umiddelbart ud til at grunden skal findes et andet sted !-)
17. december 2003 - 13:37
#4
Lidt nemmere at læse: function skiftKlasse(){ var i,x,tB,j=0,tA=new Array(),arg=skiftKlasse.arguments; if(document.getElementsByTagName){ for(i=4;i<arg.length;i++){ tB=document.getElementsByTagName(arg[i]); for(x=0;x<tB.length;x++){ tA[j]=tB[x];j++; } } for(i=0;i<tA.length;i++){ if(tA[i].className){ if(tA[i].id==arg[1]){ if(arg[0]==1){ tA[i].className=(tA[i].className==arg[3])?arg[2]:arg[3]; }else{ tA[i].className=arg[2]; } }else if(arg[0]==1 && arg[1]=='none'){ if(tA[i].className==arg[2] || tA[i].className==arg[3]){ tA[i].className=(tA[i].className==arg[3])?arg[2]:arg[3]; } }else if(tA[i].className==arg[2]){ tA[i].className=arg[3]; } } } } } -- men i stedet for alt dette, skal du simpelthen ændre den property, f.eks: if(elm.style.display=='none') elm.style.display = 'block; else elm.style.display = 'none';
17. december 2003 - 14:05
#5
skift klassen er nu ikke en dreamweaver funktion - og den er "mast sammen" helt med vilje :)
17. december 2003 - 14:07
#6
men skift hellere direkte på elementet - det er en vi alle har været igennem :)
17. december 2003 - 14:10
#7
Er det da en, du er mester for, Peter ?-) -- jeg foldede den bare ud, for at kunne dechiffrere ...
17. december 2003 - 14:15
#8
Nej jeg vil ikke tage "æren" for den, men pillet ved den har jeg som den står der :)
17. december 2003 - 14:26
#9
<a href="#" onclick="elm=document.getElementById('mn1');if(elm.style.display=='none'){elm.style.display = 'block'}else{ elm.style.display = 'none'};" class="8">Navn og Adresse</a> <div id="mn1" style="display:block;" class="showit">bla bla</div> -- skiftKlasse(1,'but1'); vil da ikke virke, så den flyttede jeg væk !-)
17. december 2003 - 14:48
#10
skiftKlasse(0,'none','hideit','showit','div');
18. marts 2004 - 16:18
#11
Sorry... spørgsmålet har været åbent så længe. Er ikke længere relevant og slet ikke brugt.. Så Lukker :0) undskyld ulejligheden...
Vi tilbyder markedets bedste kurser inden for webudvikling