diesen Code ein:Ziel auf Klick
<div>
<a href = "#"><span>Click me MAN !</span></a>
</div>
<script type = "text/javascript">
window.onload = function() {
document.body.addEventListener ("click", function (event) {
var target = event.target;
alert ("Returns \"" + target.nodeName + "\". Just want \"" + target.parentNode.nodeName + "\"")
}, false);
}
</script>
Sie können das Element „span“ in einem „Link“ sehen, wenn die „link“ geklickt wird das aktuelle Ziel ist den gleichen „span“. Wie kann das "event.target" "link" anstelle von "span" zurückgeben?
Danke und nein, ich möchte nicht "parentNode" verwenden.
Warum genau hören Sie auf einen Klick auf den Körper, anstatt nur auf das Anker-Tag zu zielen? –
@Matt: Es ist eine gute Idee, Event-Handler auf ein Minimum zu reduzieren und die Tatsache zu nutzen, dass die meisten Ereignisse die DOM-Struktur sprengen, eine Technik, die als * Event Delegation * bekannt ist. Dies kann sein, was das OP tut. –