droom: DIs verstecken

Hi folks,

mit:
function hide(nname){
document.getElementById(nname).style.visibility = 'hidden';
document.getElementById(nname).style.height = '0px';
}

blende ich ein div aus, was als Parameter übergeben wird.
wenn diese DIV aber 2mal auf der Seite vorkommt, wird aber nur das erste versteckt. Wie erreiche ich, dass alle versteckt werden.

danke

  1. blende ich ein div aus, was als Parameter übergeben wird.
    wenn diese DIV aber 2mal auf der Seite vorkommt, wird aber nur das erste versteckt. Wie erreiche ich, dass alle versteckt werden.

    eine id darf nicht 2x vorkommen, somit stellt sich die frage garnicht - zum verstecken eignet sich übrigens display: none besser als deine methode

    1. bei display:none kannst du dir auch das height:0 schenken. und wie suit schon sagte: verwende lieber IDs à la "element1", "element2" usw. dann kannst du mit javascript auch schön über die elemente iterieren:

      function hideAll(prefix) {
        i = 1;
        while(e = document.getElementById(prefix+i)) {
          e.style.display = 'none';
          i++;
        }
      }

      aufzurufen via: hideAll('element')

      achtung: ungetestet!

      Gruß,
      Niklas

      1. Hallo Niklas,

        und wie suit schon sagte: verwende lieber IDs à la "element1", "element2" usw.

        nein, das hat suit nicht gesagt!

        verwende lieber IDs à la "element1", "element2" usw. dann kannst du mit javascript auch schön über die elemente iterieren:

        Ganz, ganz, ganz schlecht :-(

        Die Elemente identifiziert man anhand des Kriteriums, welches ihnen gemeinsam ist und sie von einem x-beliebigen Element unterscheidet. Eine ID zeichnet sich gerade dadurch aus, dass es ein einzigartiges Kriterium ist und ist deswegen absolut ungeeignet.

        Gruß Uwe

        1. hallo,

          nein, das hat suit nicht gesagt!

          jetzt wo dus sagst... suit hat eigentlich gar nichts gesagt, der hat nur gemeckert :D

          Die Elemente identifiziert man anhand des Kriteriums, welches ihnen gemeinsam ist und sie von einem x-beliebigen Element unterscheidet. Eine ID zeichnet sich gerade dadurch aus, dass es ein einzigartiges Kriterium ist und ist deswegen absolut ungeeignet.

          anhand seines codes lässt sich zeigen, dass er ein anfänger ist. natürlich kann er die elemente auch anhand eines gemeinsamen parent-containers selektieren, aber ich denke dass ist schon zu aufwendig, wenns auch so einfach geht. abgesehen davon werden daten aus einer DB, z.b. posts in einem gästebuch sehr gerne als "post1", "post2" usw. bezeichnet, eben weil die ID im gesamten DOKUMENT und nicht nur im aktuellen kontext einmalig sein muss.

          Gruß,
          Niklas

          1. Danke Niklas. Deine Lösung gefällt mir. Ausserdem ist damit jede ID doch am Ende eindeutig also klappt es doch ^^

            1. Danke Niklas. Deine Lösung gefällt mir. Ausserdem ist damit jede ID doch am Ende eindeutig also klappt es doch ^^

              freut mich ;)

          2. nein, das hat suit nicht gesagt!
            jetzt wo dus sagst... suit hat eigentlich gar nichts gesagt, der hat nur gemeckert :D

            richtig, ich sage nie was, ich meckere nur :) und wehe, es meckert jetzt jemand :p

          3. Hallo Niklas,

            ... dass er ein anfänger ist.

            ja, und du hast ihm einen Bärendienst erwiesen.

            ... kann er die elemente auch anhand eines gemeinsamen parent-containers selektieren, aber ich denke dass ist schon zu aufwendig, ...

            Wenn, gerade wenn das Kriterium so einfach, so banal, so trivial wäre, gerade dann gäbe es keinen Grund IDs zu vergewaltigen.

            Gruß Uwe