Sebastian: JavaScript: Ich werde noch wahnsinnig!

Hallo liebe Leute,

ich bin was JavaScript angeht eine wirklich Niete!
Ich möchte per Mouseclick eine Funktion aufrufen, die dann einen Style verändert, sodass eine Ebene sichtbar wird.
Es geht nicht um eine Crossbrowser-Lösung sondern erstmal nur um Präsentationszwecke.
Mein Script ist simpel, aber funktioniert nicht!

Wäre super, wenn mir jemand sagen kann, warum nicht.

<script language="javascript" type="text/javascript">
<!--

function showit()
 {
 document.getElementsById("showaction").style.visibility = "visible";
 document.getElementsByName("showaction").style.visibility = "visible";
 window.setTimeout("hide()",3000);
 }

function hide()
 {
 document.getElementsById("showaction").style.visibility = "hidden";
 document.getElementsByName("showaction").style.visibility = "hidden";
 }

//-->
</script>

Die Fehlermeldung des IE :
Das Objekt unterstütz diese Eigenschaft oder Methode nicht.

Gruß,
Sebastian

  1. Nabend,

    document.getElementsById("showaction").style.visibility = "visible";

    Es gibt keine Methode namens getElementsById(), wozu auch, denn eine ID muss eindeutig sein.

    document.getElementsByName("showaction").style.visibility = "visible";

    getElementsByName liefert dir ein Array zurück. Du willst nun sicher nicht den Style des Arrays ändern sondern nur den eines Elements.

    Schlage am besten noch einmal in SelfHTML nach: http://selfhtml.teamone.de/javascript/objekte/document.htm#get_element_by_id bzw http://selfhtml.teamone.de/javascript/objekte/document.htm#get_elements_by_name

    Die Fehlermeldung des IE :
    Das Objekt unterstütz diese Eigenschaft oder Methode nicht.

    Verwende einen Browser, dieser verrät dir auch wesentlich mehr dank seiner JS-Konsole.

    Bis denne,

    1. Hallo,

      document.getElementsById("showaction").style.visibility = "visible";
      Es gibt keine Methode namens getElementsById(), wozu auch, denn eine ID muss eindeutig sein.

      document.getElementsByName("showaction").style.visibility = "visible";
      getElementsByName liefert dir ein Array zurück. Du willst nun sicher nicht den Style des Arrays ändern sondern nur den eines Elements.

      Danke für die Hinweise,
      ich werde mich nochmal ein bisschen schlauer machen!

      Verwende einen Browser, dieser verrät dir auch wesentlich mehr dank seiner JS-Konsole.

      Der Mozilla wird es wohl bringen.

      Danke!

      Gruß,
      Sebastian

  2. Hello,

    ich auch bei diesen Betreff-Zeilen...

    Liebe Grüße aus http://www.braunschweig.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    1. Liebe Grüße aus http://www.braunschweig.de

      Hallo Tom,

      dann brauchst du bald einen guten Psychotherapeuten,
      oder ein wenig Geduld gegenüber denen, die manchmal etwas unachtsam
      sind.

      Noch liebere Grüße,
      Sebastian

      1. Hello,

        Liebe Grüße aus http://www.braunschweig.de

        dann brauchst du bald einen guten Psychotherapeuten,
        oder ein wenig Geduld gegenüber denen, die manchmal etwas unachtsam
        sind.

        Eine hübsche Therapeutin wäre mir aber lieber. Lässt sich das vielleicht auch machen?

        Liebe Grüße aus http://www.braunschweig.de

        Tom

        --
        Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
  3. <script type="text/javascript">

    function showit()
    {
    document.getElementsById("showaction").style.visibility = "visible";
    setTimeout("hide()",3000);
    }

    function hide()
    {
    document.getElementsById("showaction").style.visibility = "hidden";
    }

    </script>

    so sollte es gehen.

    MfG
    C2H5OH

    1. Hubert hat recht, es heißt natürlich:

      document.getElementById("showaction").style.visibility =

      man muß doch immer genauer lesen, aber auf die Idee, daß dort jemand ein "s" einfügt kann man auch nicht leicht kommen.
      MfG
      C2H5OH

      1. Hallo,

        das verdammte "S"!
        Das habe ich mir fälschlicher Weise bei
        getElementsByName()
        abgeguckt!

        Danke für deine (eure) Aufmerksamkeit!

        Gruß,
        Sebastian

      2. Hi C2H5OH,

        Hubert hat recht, es heißt natürlich:

        document.getElementById("showaction").style.visibility =
        man muß doch immer genauer lesen, aber auf die Idee, daß dort jemand ein "s" einfügt kann man auch nicht leicht kommen.
        MfG
        C2H5OH

        Doch, das ist imho einer der häufigsten Fehler nach "document.getElementByName()" oder "document.getElementByTagName()"
        ;-)

        Gruß

        Kurt

        --
        > Nein, ich beantworte keine Anfragen per e-mail.
        "Kraft wird aus dem Zwang geboren und stirbt an der Freiheit."  (Leonardo da Vinci; it. Universalgenie; 1452-1519)
        http://elektro-dunzinger.at
        http://shop.elektro-dunzinger.at