dave: IE ignoriert style.display = 'none'

Hallo!

Ich habe auf meiner Seite verschiedene Div's, die der User ein- und ausblenden kann.

//JS
function hide(id) {
  var obj = window.document.getElementById(id);
  obj.style.display = 'none';
}

Leider ignoriert der IE (6, 5.5, 5.1) das Ausblenden der Div's. Im Firefox funktioniert dies ohne Probleme.
Bitte um Hilfe!

PS: Die Objekte existieren bereits vor dem Funktionsaufruf

Grüße
dave

  1. Lieber dave,

    //JS
    function hide(id) {
      var obj = window.document.getElementById(id);
      obj.style.display = 'none';
    }

    Leider ignoriert der IE (6, 5.5, 5.1) das Ausblenden der Div's.

    Meldet er Fehler? Ich sehe momentan keinen vernünftigen Grund, warum obiger Code im IE nicht umgesetzt werden sollte... Ich verwende selbst diesen Mechanismus erfolgreich im IE.

    Liebe Grüße aus Ellwangen,

    Felix Riesterer.

    1. Hallo!

      Vielen Dank für deine rasche Antwort.

      Meldet er Fehler? Ich sehe momentan keinen vernünftigen Grund, warum obiger Code im IE nicht umgesetzt werden sollte... Ich verwende selbst diesen Mechanismus erfolgreich im IE.

      Nein, leider erhalte ich keine Fehlermeldung! Ich verstehe auch nicht warum.

      lg
      dave

      1. Lieber dave,

        kannst Du das verstecken manuell erzwingen? Also ich meine folgende Eingabe in die Adresszeile des Browsers:
        javascript:alert(hide(...deine ID...))

        oder
        javascript:alert(getElementById(...Deine ID...).style.display = 'none'))

        Die alerts habe ich mir angewöhnt, damit keine neue Seite mit dem Rückgabewert der Funktion angezeigt wird, sondern das aktuelle HTML-Dokument erhalten bleibt.

        Liebe Grüße aus Ellwangen,

        Felix Riesterer.

        1. kannst Du das verstecken manuell erzwingen? Also ich meine folgende Eingabe in die Adresszeile des Browsers:
          javascript:alert(hide(...deine ID...))

          oder
          javascript:alert(getElementById(...Deine ID...).style.display = 'none'))

          Hierbei bekomme ich als Rückgabewert "undefined", was aber auch klar ist, da die function hide() keinen Rückgabewert hat.
          Ich hab mal folgendes probiert

          //JS
          function hide(id) {
            alert(window.document.getElementById(id).style.display='none');
          }

          Nun bekomme ich bei beiden Browsern (IE, Moz) "none" zurück, jedoch versteckt der IE die DIV's nicht.

        2. Hallo Felix.

          javascript:alert(getElementById(...Deine ID...).style.display = 'none'))

          Die alerts habe ich mir angewöhnt, damit keine neue Seite mit dem Rückgabewert der Funktion angezeigt wird, sondern das aktuelle HTML-Dokument erhalten bleibt.

          Dafür gibt es doch void.

          Einen schönen Dienstag noch.

          Gruß, Ashura

          --
          sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
          „It is required that HTML be a common language between all platforms. This implies no device-specific markup, or anything which requires control over fonts or colors, for example. This is in keeping with the SGML ideal.“
          [HTML Design Constraints: Logical Markup]
          1. Lieber Ashura,

            Dafür gibt es doch void.

            jetzt habe ich endlich den Gebrauchswert dieser Funktion verstanden! Danke Dir!

            Liebe Grüße aus Ellwangen,

            Felix Riesterer.

  2. Vorher sah der Quelltext so aus:
    //HTML
    <body>
    <form>
    <input name="chat" type="hidden" value="" />
    <input name="profil" type="hidden" value="" />
    <div id="container">
       <div id="test">...</div>
       ...
    </div>
    </form>

    Nun habe ich die hidden-fields nach den DIV(container) verschoben, und siehe da, nun versteckt auch der IE die DIV's.

    M$ - alles klar?

    Vielen Dank für die Hilfe.

    lg
    dave

    1. Hi,

      Vorher sah der Quelltext so aus:

      [...]

      Nun habe ich die hidden-fields nach den DIV(container) verschoben, und siehe da, nun versteckt auch der IE die DIV's.

      hm, bei mir funktioniert der Code im IE auch so. Kannst Du die nicht funktionierende Seite bitte mal online zur Verfügung stellen?

      Cheatah

      --
      X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
      X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
      X-Will-Answer-Email: No
      X-Please-Search-Archive-First: Absolutely Yes