jQuery Event.Target problème
-
26-09-2019 - |
Question
Je ne sais pas se que je l'ai oublié comment le faire ou si ce dernier est un bug, mais je ne peux pas trouver juste la référence de l'appelant en cas « clic » en utilisant jQuery.
je suis procédant comme suit:
$(document).ready(function() {
$('#parent a.item').click(doSomething);
});
function doSomething(e) {
// Alerts for demostrational purposes only
alert(e.target);
alert(e.currentTarget);
alert(this);
alert($(this)[0]);
}
Toutes les alertes montrent l'attribut de hyperlink's (page URL + '#').
Ai-je fait quelque chose de mal?
Notes: En utilisant jQuery 1.4.2.
La solution
Il est parce que vous alerter si vous voyez la représentation de chaîne (depuis alert()
prend une chaîne) ... qui, pour un point d'ancrage est le href
. Vous pouvez le faire par exemple:
alert(e.target); //or perhaps alert(this.target); - alerts the href
alert(e.target.innerHTML); //or perhaps alert(this.innerHTML); - alerts the html
Vous pouvez l'essayer / jouer avec ici , notez que this
et e.target
ne sont pas toujours le même, si le clic est venu d'un élément enfant, ils seront différents.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow