molily: noscript: bei deaktiviertem JS weiterer HREF möglich?

Beitrag lesen

tja - hab herumgestöbert aber noch keiiine leise Ahnung wie ich was wo genau unter Verwendung von "this.href" ändern müsste ...

Okay, nochmal von vorne. Du hast einen ordinären Link:

<a href="foto1.jpg">...</a>

Jetzt willst du beim Klick darauf ein Script ausführen. Dazu verwendest du den onclick-Handler. Wenn du den Event-Handler ins HTML direkt reinschreibst, sieht's so aus:

<a href="foto1.jpg" onclick="JavaScript-Code hier hinein">...</a>

Der Code dort

  • hat Zugriff auf das a-Element über »this«
  • hat Zugriff auf das Event-Objekt über »event« (für dich jetzt nicht so wichtig, aber später vielleicht)

this zeigt also auf das a-Elementobjekt, darüber kannst du natürlich direkt auf das href-Attribut zugreifen:

<a href="foto1.jpg" onclick="alert(this.href);">...</a>

Dementsprechend das Attribut auch an eine eigene Funktion als Paramter übergeben:

<a href="foto1.jpg" onclick="foto_tausch(this.href)">...</a>

Vorteil: Du brauchst die Bildadresse nicht nochmal im onclick-Attribut unterbringen-

Wie gesagt kannst du mit return false verhindern, dass die Standardaktion ausgeführt wird, also foto1.jpg im Browser aufgerufen wird.

Wahrscheinlich hast du nicht nur ein solchen Link, daher würde es sich anbieten, diese click-Handler automatisch mit einem JavaScript zu vergeben, anstatt überall onclick="..." Inline-Event-Handler ins HTML zu schreiben.

Mathias