Benni: ein- und ausblenden funktioniert nicht im IE

Servus

ich habe eine JavaScript Funktion die auf klicken eines Links Grafiken ein bzw ausblendet. Die funktioniert mit dem Firefox auch ganz gut... leider geht sie mit IE gar nicht. Ich hoffe es kann mir jemand sagen was ich falsch mache. Hab sie fast 1:1 von selfhtml abgeschrieben (=> ich kenn mich mit JS fast nicht aus).

function switch_visbility(element_1, element_2) {
  if (document.getElementById)
    var visibility1 = document.getElementById(element_1).style.display;
    var visibility2 = document.getElementById(element_2).style.display;

if(visibility1 == "none")
 {
  document.getElementById(element_1).style.display = "table";
  document.getElementById(element_2).style.display = "none";
 }
 if(visibility1 == "table")
 {
  document.getElementById(element_2).style.display = "table";
  document.getElementById(element_1).style.display = "none";
 }
}

Der Link lautet: <a href="javascript:switch_visbility('1', '2')">

Wäre für Lösungen, Links die Lösungen bringen oder ähnliches was mir weiterhelfen könnte sehr dankbar.

  1. Moin

    in SelfHTML findest du unter "Beachten Sie" als letzten Satz den Hinweis, dass auch IE7 display:table nicht kennt.
    Probiers doch mal mit display:block.

    Gruß
    rfb

    --
    Man kann einen Menschen nichts lehren, man kann ihm nur helfen, es selbst zu entdecken.
    (Galileo Galilei)
    1. der IE kennt keine table-Typen.

      ok das war der Fehler.... hab table durch block ersetzt. Jetz gehts

      Du verlinkst augenscheinlich auf keine Ressource. Warum verwendest Du also ein <a>-Element?

      ich bin davon ausgegangen, dass es egal ist ob ich onclick="href.." oder <a href""> nehme.... das ist es anscheinend nicht...

      Wie kommt es eigentlich, dass Du, obwohl Du Grafiken ein- und ausblenden möchtest, display:table verwendest?

      Ich habe die Grafiken als Tabellenhintergrund. Also hab ich es ungenau formuliert. Ich blende eigentlich keine Grafiken ein und aus sondern Tabellen. sry

      Vielen Dank für die Hilfe. Ich hoffe es funktioniert jetzt

  2. Hi,

    ich habe eine JavaScript Funktion die auf klicken eines Links Grafiken ein bzw ausblendet. Die funktioniert mit dem Firefox auch ganz gut... leider geht sie mit IE gar nicht.

    der IE kennt keine table-Typen.

    (=> ich kenn mich mit JS fast nicht aus).

    Für dieses Problem benötigst Du zunächst nur CSS-Wissen.

    if (document.getElementById)
        var visibility1 = document.getElementById(element_1).style.display;
        var visibility2 = document.getElementById(element_2).style.display;

    Warum beachtest Du einerseits nicht-DOM-fähige Browser, provozierst auf diesen aber andererseits Fehler?

    Der Link lautet: <a href="javascript:switch_visbility('1', '2')">

    Du verlinkst augenscheinlich auf keine Ressource. Warum verwendest Du also ein <a>-Element?

    Wäre für Lösungen, Links die Lösungen bringen oder ähnliches was mir weiterhelfen könnte sehr dankbar.

    Wie kommt es eigentlich, dass Du, obwohl Du Grafiken ein- und ausblenden möchtest, display:table verwendest?

    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