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
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
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