Cible sur cliquez sur

Regardez ce code:

<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>

Vous pouvez voir l'élément "span" à l'intérieur d'un "lien", lorsque le "lien" est cliqué, l'objectif actuel est de même de "durée". Comment "de l'événement.cible" retour "lien" au lieu de "durée".

Merci et non, je ne veux pas utiliser "parentNode".

Pourquoi êtes-vous exactement à l'écoute pour un clic sur le corps au lieu de simplement le ciblage de la balise d'ancrage?
C'est une bonne idée de réduire les gestionnaires d'événements à un minimum et d'utiliser le fait que la plupart des événements de la bulle en haut de l'arborescence DOM, une technique connue sous le nom de événement délégation. C'est peut être ce que l'OP est en train de faire.

OriginalL'auteur Caio | 2011-01-10