Ergebnis 1 bis 10 von 10

Thema: getElementsByClass

  1. #1
    TP-Veteran Avatar von jonemo
    Registriert seit
    Dec 2002
    Ort
    london
    Beiträge
    1.020

    getElementsByClass

    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

    HTML-Code:
    <p class="falsch">das ist falsch!</p>
     <p class="richtig">das ist richtig!</p>
     <a href="javascript:change()">falsch/richtig</a>
    naja, die funktion change() sollte halt alle Absätze, die richtig sind ausblenden und dafür die falschen einblenden.

    Wie mach ich das?

  2. #2
    TP-Veteran Avatar von jonemo
    Registriert seit
    Dec 2002
    Ort
    london
    Beiträge
    1.020
    zu blöde formuliert, zu schwer? warum antwortet niemand?

  3. #3
    seb
    seb ist offline
    TP-Veteran
    Registriert seit
    Jan 2002
    Beiträge
    1.741
    Es gibt getElementsByClassName().

  4. #4
    TP-Veteran Avatar von AnnaStesia
    Registriert seit
    Mar 2002
    Ort
    Berlin
    Beiträge
    1.863
    @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
    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>
    hilft dir das weiter, oder hat sich das tehma eh schon erledigt?
    Geändert von AnnaStesia (25.01.2005 um 11:57 Uhr)
    Ich weiss es doch auch nicht.
    » www.sightdesign.de «

  5. #5
    seb
    seb ist offline
    TP-Veteran
    Registriert seit
    Jan 2002
    Beiträge
    1.741
    @seb: seit wann das denn?
    Ups...*schäääm*...mal wieder geschrieben, ohne vorher nachzudenken.

    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.

  6. #6
    TP-Moderator Avatar von Adromir
    Registriert seit
    Jun 2004
    Ort
    Hannover
    Beiträge
    4.811
    Wenn jede Class nur einmal vorkommt, würde ich vieleicht mit GetElementById arbeiten und anstelle einer Class ne ID vergeben..

  7. #7
    TP-Veteran Avatar von jonemo
    Registriert seit
    Dec 2002
    Ort
    london
    Beiträge
    1.020
    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.

  8. #8
    TP-Moderator Avatar von Adromir
    Registriert seit
    Jun 2004
    Ort
    Hannover
    Beiträge
    4.811
    Dann vieleicht GetElementByName (soweit ich weiß, darf das Nameattribut mehrfach verwendet werden).

  9. #9
    TP-Veteran Avatar von AnnaStesia
    Registriert seit
    Mar 2002
    Ort
    Berlin
    Beiträge
    1.863
    @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 «

  10. #10
    TP-Moderator Avatar von Adromir
    Registriert seit
    Jun 2004
    Ort
    Hannover
    Beiträge
    4.811
    @AnnaStesia: Nimmer nich.. Wieder was dazu gelernt

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51