zu blöde formuliert, zu schwer? warum antwortet niemand?
Ich weiß, dass es die JavaScript-Funktion im Titel nicht gibt, aber ich bräuchte sie. Was ich vorhabe: Ich will alle Elemente einer speziellen Klasse auf einmal ausblenden. Beispiel
naja, die funktion change() sollte halt alle Absätze, die richtig sind ausblenden und dafür die falschen einblenden.HTML-Code:<p class="falsch">das ist falsch!</p> <p class="richtig">das ist richtig!</p> <a href="javascript:change()">falsch/richtig</a>
Wie mach ich das?
zu blöde formuliert, zu schwer? warum antwortet niemand?
Es gibt getElementsByClassName().![]()
@seb: seit wann das denn? meines wissens nach wird getElementsByClassName() zwar seit Jahren von Entwicklern gewünscht, wurde aber nie implementiert.
was es aber gibt, ist die Eigenschaft className, damit kann man sich behelfen
hilft dir das weiter, oder hat sich das tehma eh schon erledigt?Code:<html> <head> <title></title> <script type="text/javascript"> function ShowClass(c){ var alltags = document.getElementsByTagName("p"); //für alle Tags: "*" for (i=0; i<alltags.length; i++){ if (alltags[i].className==c) alltags[i].style.visibility = "hidden"; } } </script> </head> <body> <p class="falsch">das ist falsch!</p> <p class="richtig">das ist richtig!</p> <a href="#" onClick="ShowClass('falsch')">falsch/richtig</a> </body> </html>
Geändert von AnnaStesia (25.01.2005 um 11:57 Uhr)
Ich weiss es doch auch nicht.
» www.sightdesign.de «
Ups...*schäääm*...mal wieder geschrieben, ohne vorher nachzudenken.@seb: seit wann das denn?
Du hast natürlich Recht. Ich hatte etwas mit "className" im Kopf und wusste, dass man damit Elemente über ihre CSS-Klasse ansprechen kann. Dass es dazu einer Schleife bedarf, mit der man erstmal alle potentiellen Zielelemente durchläuft, um dann mittels Prüfung von element.className die gesuchten zu ermitteln, ist mir in dem Moment nicht eingefallen.
Wenn jede Class nur einmal vorkommt, würde ich vieleicht mit GetElementById arbeiten und anstelle einer Class ne ID vergeben..
getElementById kenne ich ja, aber das ist in diesem Fall nicht tauglich. Und weil mir das schon seit Monate immer mal wieder nuetzlich erschien, irgendwelches Verhalten anhand der Klasse zu veraendern und ich nie was aehnliches gesehen habe, habe ich mich durchgerungen, doch mal zu fragen. auf die idee mit der schleife waere ich schon aufgrund meiner verschwindend geringen kenntnisse in javascript nie gekommen...
herzlichen dank.
Dann vieleicht GetElementByName (soweit ich weiß, darf das Nameattribut mehrfach verwendet werden).
@adromir: auch auf die Gefahr hin, dass ich bei dir auf der Ignorier-Liste stehe, aber das bringt doch auch nix - name gibt es nur für ausgewählte Elemente, siehe hier, daher eignet sich das nicht für den Zugriff auf divs, paragraphen, usw.
Ich weiss es doch auch nicht.
» www.sightdesign.de «
@AnnaStesia: Nimmer nich.. Wieder was dazu gelernt![]()
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)