Marius: Onclick einem Link geben

Hallo,
ich habe folgendes Problem:

ich erstelle einen link:

var close = document.createElement("a");
close.id = "close";
document.getElementById("test").appendChild(close);
document.all.close.href= "#";

Nun möchte ich dafür sorgen, das bei onclick etw. passiert, ich weiß bloß nicht wie ich dafür sorgen kann.
D.h. wenn man auf den Link klickt, soll ne JS-Funktion starten.
Ich habe es mal so probiert:

document.all.close.onclick = "close()";

So hat es schonmal nicht funktioniert...

Mfg, Marius

  1. Hallo,

    Nun möchte ich dafür sorgen, das bei onclick etw. passiert, ich weiß bloß nicht wie ich dafür sorgen kann.
    D.h. wenn man auf den Link klickt, soll ne JS-Funktion starten.

    soweit ich weiß muss das im Link stehen. Genauer im href="".
    Also <a href="javascript:close()">.

    Grüße, Matze

    1. Moin Moin!

      soweit ich weiß muss das im Link stehen. Genauer im href="".
      Also <a href="javascript:close()">.

      Mumpitz! Für onclick braucht man nur die Zuweisung einer Funktion an das oncklick-Attribut des Elements, das grottige javascript:-Pseudoprotokoll ist völlig unnötig. Den Rest hat Cheatah ausreichend beschrieben.

      Alexander

      --
      Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
      1. Und wie soll ich das jetzt exakt machen?
        Also es ist kein Intranet Projekt... ich mache das einfach wie ich es haben will, und hoffe das es dann für alle Browser funktioniert.
        Welchen Code muss ich denn jetzt explizit benutzen?
        Mfg Delfried
        Wie weiße ich das Addribut zu?

        1. Moin Moin!

          Und wie soll ich das jetzt exakt machen?

          Schritt 1: Gehirn einschalten.
          Schritt 2: Cheatas Postung, und ggf. mein erstes Posting, in diesem Thread nochmal lesen
          Schritt 3: In der Javascript-Ecke von SelfHTML die nicht explizit als Code geposteten Teile nachlesen.

          Also es ist kein Intranet Projekt... ich mache das einfach wie ich es haben will, und hoffe das es dann für alle Browser funktioniert.

          Dann verzichte komplett auf Javascript und nutze für Link-Funktionen ausschließlich HTML.

          Welchen Code muss ich denn jetzt explizit benutzen?
          Mfg Delfried
          Wie weiße ich das Addribut zu?

          Vermutlich mit einem Eimer weißer Fassadenfarbe und einem großen Pinsel. Die Abenteuer von Tom Sawyer und Huckleberry Finn sollten da eine gute Anleitung sein.

          Falls Du einem Attribut einen Wert zuweisen möchtest, bietet Javascript dafür zwei Varianten:

            
            objekt.attribut=wert;  
          
          

          oder

            
            objekt['attribut']=wert;  
          
          

          Die zweite Variante funktioniert immer, die erste nur, wenn der Attributname ein gültiger Javascript-Bezeichner ist.

          Alexander

          --
          Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
  2. Hi,

    ich erstelle einen link:

    ein Link dient der Verlinkung einer weiteren Ressource. Ganz offensichtlich ist dies nicht, was Du tun möchtest.

    document.all.close.href= "#";

    Wenn Du speziell für den IE 4 entwickelst, arbeitest Du offenbar für ein Intranet oder etwas Vergleichbares. Dies solltest Du *unbedingt* in einem Posting angeben - *immer*. Eines ist mir aber nicht klar: Wieso beherrschen eure IE 4 DOM-Methoden?

    document.all.close.onclick = "close()";
    So hat es schonmal nicht funktioniert...

    Event-Handler enthalten Funktionen, keine Strings. Dass in entsprechenden HTML-Attributen Strings angegeben werden müssen, liegt an den Restriktionen von HTML. Diese existieren in JavaScript nicht. Es gibt also keinen Grund, hier den Umweg über Strings zu gehen. Dass dies zudem "nicht funktioniert", wie Du unter kompletter Auslassung jedweder Fehlerbeschreibung sehr richtig feststellst, ist ein weiteres Zeichen dafür, dass Du einfach mit Funktionen arbeiten solltest.

    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