2 Stimmen

Referenz auf das Dom-Element des Ankers von Javascript erhalten

Wenn ich ein Javascript in einem Anker habe href Attribut:

<a href="javascript:alert('hello!')">

Gibt es eine Möglichkeit, wie ich einen Verweis auf das DOM-Element erhalten kann, das angeklickt wurde, wenn das Skript ausgeführt wird? Ich meine, ich weiß, dass ich Folgendes tun könnte

<a href="javascript:alert('hello from '+document.getElementById('thisAnchor'))" id="thisAnchor">

Aber ich hatte mir eher etwas erhofft wie

<a href="javascript:alert('hello from '+target)">

3voto

user113716 Punkte 309387

So etwas wie das hier?

Beispiel: http://jsfiddle.net/TTzDb/

<a href="#" onclick="alert('hello from '+this.innerHTML)">me</a>

Verwendung von onclick , this verweist auf das Element, das das Ereignis empfangen hat.

2voto

Crozin Punkte 42878

Ja, und die Antwort lautet this die sich auf das aktuelle DOM-Element bezieht:

<a href="javascript:alert('Hello from ' + this.tagName);">Click me</a>

EDITAR:

Wie bobince bereits erwähnt hat (siehe Kommentare), wird das natürlich nicht wie vorgesehen funktionieren. Die richtige Form ist:

<a href="..." onclick="alert('Hello from ' + this.tagName);">Click me</a>

2voto

matt snider Punkte 3913

Verschieben Sie das JavaScript in das Attribut onclick="yourJavaScriptHere". Dann können Sie das Schlüsselwort "this" verwenden, um auf Ihren Anker zu verweisen. Also

<a href="#" onclick="alert('hello from '+this)">some text</a>

Obwohl das nicht sehr sinnvoll ist. Außerdem ist es besser, JavaScript und HTML voneinander zu trennen, um eine besser zu wartende Website zu erstellen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X