John: Selektiere all nachfolgenden benachbarten DIVs

Hallo miteinander,

Ich habe eine Frage bzgl. CSS Selektoren in Verbindung mit Javascript:

Ich habe ein DIV mit der ID von "Container", innerhalb dieses Containers befinden sich mehrere Sub-DIVs.

Um alle Sub-DIVs mit Javascript anzusprechen verwende ich document.querySelectorAll("#Container div");

Wie kann ich jedoch nur jene NachbarDIVs selektieren, die nach einem bestimmten DIV kommen?

   // div mit der Id of "hacker"
   hacker.querySelectorAll( // alle benachbarten nachfolgenden Divs ... ?

Danke. John.

  1. Hallo,

       // div mit der Id of "hacker"
       hacker.querySelectorAll( // alle benachbarten nachfolgenden Divs ... ?
    

    aufgrund der im Abschnitt "Beachten Sie" genannten Einschränkung könnte der Geschwister-Selektor (Sibling Selector) genau das leisten, was du suchst.

    Immer eine Handbreit Wasser unterm Kiel
     Martin

    --
    Wenn ich den See seh, brauch ich kein Meer mehr.
  2. @@John

    Wie kann ich jedoch nur jene NachbarDIVs selektieren, die nach einem bestimmten DIV kommen?

    Mit dem general sibling combinator.

    😷 LLAP

    --
    „Dann ist ja auch schrecklich, dass wir in einem Land leben, in dem nicht nur Bildungswillige leben, sondern auch hinreichende Zahlen von Bekloppten. Das darf ich so locker formulieren, ich bin ja jetzt Rentner und muss nicht mehr auf jedes Wort achten.“
    — Joachim Gauck über Impfgegner
    1. Stimmt, aber ich habe das Problem wohl nicht richtig formuliert.

      Ich möchte alle nachfolgenden DIVs einer Gruppe von DIVs finden.

      BSP: ich habe im Container 4 DIVs, daher findet:

      DIV1 => DIV2, DIV3, DIV4,

      DIV2 => DIV3, DIV4,

      DIV3 => DIV4

      DIV4 => undefined (oder 0 bzw. Null?)

      for const (DIV of DIVs) {
        DIV.querySelectorAll( // alle nachfolgenden Nachbaren von DIV 
      }
      
      
      

      (Haben leider nicht alle eine ID, mit der ich sie ansprechen und benennen könnte)

      1. @@John

        for const (DIV of DIVs) {
        

        Das wird wohl nichts. Die Klammer steht falsch und die Schleifenvariable sollte wohl nicht mit const deklariert werden, sondern mit let.

          DIV.querySelectorAll( // alle nachfolgenden Nachbaren von DIV 
        }
        

        Ich hätte vermutet, dass es DIV.querySelectorAll(':scope ~ div') tut. Tut’s aber nicht.

        Aber eine while-Schleife und nextElementSibling sollte es tun.

        😷 LLAP

        --
        „Dann ist ja auch schrecklich, dass wir in einem Land leben, in dem nicht nur Bildungswillige leben, sondern auch hinreichende Zahlen von Bekloppten. Das darf ich so locker formulieren, ich bin ja jetzt Rentner und muss nicht mehr auf jedes Wort achten.“
        — Joachim Gauck über Impfgegner
        1. Aber eine while-Schleife und nextElementSibling sollte es tun.

          DAS ISSES!

          Danke Gunnar!