Chris Jasra: Tabelle verstecken und wieder erscheinen lassen?

Hay,

da mein alter Thread ziemlich weit vom Blickfeld geraten ist, möchte ich auf diesen hier Bezug nehmen (https://forum.selfhtml.org/?t=160568&m=1044334). Sorry wegen dem Doppelthread, aber das Recherchieren bei SELFHTML und anderen Websites hat mir nichts gebracht.

Mit diesen Skript kann ich die Tabelle auf Klick wieder verschwinden oder erscheinen lassen:

<script type="text/javascript">
function switchlayer(Layer_Name) {
  var Browser = document.getElementById? 1:0 ;

if (Browser) {
    document.getElementById(Layer_Name).style.display=(document.getElementById(Layer_Name).style.display=='table') ? 'none' : table';
  }
}
</script>

[...]

<table border="1" style="width: 100%;">
  <tr>
    <td><a href="#" onclick="javascript:switchlayer('1'); return false;">Link</a>
  </tr>
</table>
<table border="1" style="width: 100%; display: none;" id="1">
  <tr>
    <td>Neue Tabelle</td>
  </tr>
</table>

Zur Info: Dieses ist ein leicht modifizierter Skript von der Seite http://www.it-academy.cc/article/1236/JavaScript:+aufklappbares+Menue.html aber dieser ist ziemlich Browser-unkonform. Lasse ich jetzt die zwei table-Variablen im Skript stehen, funktioniert er zwar im Netscape, jedoch nicht im Internet Explorer. Für den IE scheint nur die Variable block zu funktionieren. Deshalb sehe ich als einzigen Ausweg, diesen Skript über den Haufen zu werfen und auf eine alternative Lösung zurückzugreifen. Existiert da irgendwo ein Ansatz?

Vielen Dank im Voraus =)
Chris Jasra

  1. da gibts durchaus eine Alternative! Schau dir mal das JavaScript Framework jQuery (www.jquery.com an. Ist recht schnell zu erlernen. Und bietet dir diese Möglichkeiten. Und viele weitere. Solltest du Probleme damit haben. Einfach posten

    1. da gibts durchaus eine Alternative! Schau dir mal das JavaScript Framework jQuery (www.jquery.com an. Ist recht schnell zu erlernen. Und bietet dir diese Möglichkeiten. Und viele weitere. Solltest du Probleme damit haben. Einfach posten

      Hay,

      ich habe mich mal mit der ganzen Materie befasst. Es gäbe dort auf der Site zwar Möglichkeiten, aber diese sind mir schon ein bisschen zu komplex und schlecht zu überblicken. Gibt es nicht wie in C+ eine Funktion wie hide; und show;?

  2. Hello out there!

    da mein alter Thread ziemlich weit vom Blickfeld geraten ist

    Ist er nicht.

    möchte ich auf diesen hier Bezug nehmen (https://forum.selfhtml.org/?t=160568&m=1044334). Sorry wegen dem Doppelthread

    Da hilft auch keine Entschuldigung, Doppelpostings sind unerwünscht.

    See ya up the road,
    Gunnar

    --
    „Und [dieses Forum] soll […] auch ein Fachforum bleiben und kein Psychologieforum werden.“ (Kirsten Evers)
  3. Hallo Chris,

    "1" ist keine gültige ID. Versuch mal "Tabelle1".

    Gruß, Jürgen

    1. Hallo Chris,

      "1" ist keine gültige ID. Versuch mal "Tabelle1".

      Gruß, Jürgen

      Hay,

      habs mal geändert, aber gebracht hat es nichts. Vielleicht interpretiert der IE "table" als Attribut nicht im Skript?

      Chris Jasra

    2. Hallo JürgenB,

      id="Tabelle1" ist auch in Tabellen erlaubt. Aber vieleicht liegt dein Problem ja hier:

      document.getElementById(Layer_Name).style.display=(document.getElementById(Layer_Name).style.display=='table') ? 'none' : table';

      Hast du schon mal geprüft, welche Eigenschaft die Tabelle überhaupt hat? CSS-Eigenschaften können nur ausgelesen werden, wenn sie auch gesetzt wurden, und der IE kennt display:table nicht. Ich denke, diesen Teil wirst du umschreiben müssen.

      Gruß, Jürgen

      1. Hallo JürgenB,

        Hallo JürgenB,

        ...

        Gruß, Jürgen

        ach du jeh, jetzt führe ich schon Selbstgespräche.

        Sorry, bin in die falche Zeile geraten.

        Gruß, Jürgen

        1. Hello out there!

          ach du jeh, jetzt führe ich schon Selbstgespräche.

          Mach dir nichts draus, Ingrid, das tu ich auch manchmal. ;-)

          Was mich mehr wundert als dass du dir selbst antwortest ist, dass du das in einem Doppelposting-Thread tust, der evtl. gesperrt und nicht archiviert wird, anstatt im Originalthread.

          See ya up the road,
          Gunnar

          --
          „Und [dieses Forum] soll […] auch ein Fachforum bleiben und kein Psychologieforum werden.“ (Kirsten Evers)
          1. Hallo Gunnar,

            ... der evtl. gesperrt und nicht archiviert wird, ...

            hoffentlich. Ich werde den OT mal suchen und meine Antwort da noch einmal posten.

            Gruß, Jürgen

      2. Hast du schon mal geprüft, welche Eigenschaft die Tabelle überhaupt hat? CSS-Eigenschaften können nur ausgelesen werden, wenn sie auch gesetzt wurden, und der IE kennt display:table nicht. Ich denke, diesen Teil wirst du umschreiben müssen.

        Gruß, Jürgen

        Hay,

        ja das wird auch das Problem sein, denke ich. Werde noch mal bei SELFHTML gründlicher schauen. Wenigstens weiß ich jetzt endlich, wo der Fehler ist =)

        Was mich mehr wundert als dass du dir selbst antwortest ist, dass du das in einem Doppelposting-Thread tust, der evtl. gesperrt und nicht archiviert wird, anstatt im Originalthread.

        See ya up the road,
        Gunnar

        Ich habe mich schon entschuldigt und durch das ewige Betonen von diesem (anscheinend) gravierenden Fehler wird das ganze auch nicht besser. Schlimmstenfalls verknüpft man eben diese beiden Threads. Nebenbeigemerkt: Der Thread ist nur ein Bezug zum alten, wobei ich hier die Kernfrage stellte, ob es einen alternativen Skript oder Lösungsansatz gibt.

        Vielen Dank für die Antworten und für das Verständnis des Doppelthreads (was auch niemals mehr vorkommen wird)
        Chris Jasra