Vinzenz Mai: DOM: Zugriff auf Elternknoten

Beitrag lesen

Hallo Kuno,

<ul>
  <li id="bookmark"><a href="#" onClick="AddBookmark();"></li>
  <li id="bookmark2"><a href="#" onClick="AddBookmark2();"></li>
  <li id="bookmark3"><a href="#" onClick="AddBookmark3();"></li>
</ul>

  

> Ich möchte jetzt jeweils in der JavaScript-Funktion ermitteln, welche ID der LI-Tag hat in dem sich die Funktion befindet und zwar ohne, dass ich den Name als Parameter übergeben muss.  
  
warum willst Du keinen Parameter übergeben?  
  
Empfehlung 1:  
Ergänze "return false" zum [onclick](http://de.selfhtml.org/javascript/sprache/eventhandler.htm#onclick)-Handler.  
Dadurch verhinderst Du, dass der (nicht vorhandene) Link angesprungen wird.  
Beachte außerdem die Schreibweise mit kleinem statt großem "c".  
  
~~~html
  
<li id="bookmark2"><a href="#" onclick="AddBookmark2(); return false;"></a></li>

Empfehlung 2:
Wozu ein a-Element? Benötigst Du hover für den IE?
Wenn nein, dann nimm doch ein beliebiges anderes Element, das ebenfalls einen
onclick-Handler hat, z.B. ein span-Element. Sorge dafür, dass auch Inhalt vorhanden ist - und schließe das Element ordentlich. Jetzt kannst Du auf
"return false;" wieder verzichten, das benötigst Du nur in einem a-Element.

  
<li id="bookmark2"><span onclick="AddBookmark2();">Klick mich</span></li>

Empfehlung 3:
Übergebe einen Parameter, z.B. einen Verweis auf das aktuelle Objekt:

  
<li id="bookmark2"><span onclick="AddBookmark2([link:http://de.selfhtml.org/javascript/sprache/objekte.htm#this@title=this]);">Klick mich</span></li>

Ich möchte nämlich bei Klick auf einen der Links Eigenschaften des ganzen Listenelements ändern-

Das ist auch bei Übergabe eines Parameters möglich.

Freundliche Grüße

Vinzenz