J'ai trouvé beaucoup de fonctions comme celle-ci:
$(function() {
$("body a").click(function() {
alert(this.innerHTML);
return false;
});
});
Quelle est la différence entre this
et $(this)
dans jquery?
Ils ont tous une ligne return false;
- Je ne sais pas quand je devrais utiliser return false
Dans la fonction jquery et je ne sais pas à quoi ça sert?
Selon jQuery Events: Stop (Mis) Using Return False (lien archivé), le retour de false
effectue trois tâches lorsqu'il est appelé:
La seule action nécessaire pour annuler le comportement par défaut est preventDefault()
. Émission return false;
peut créer du code fragile. Habituellement, vous voudriez juste ceci:
$("a").on( 'click', function (e) {
// e == our event data
e.preventDefault();
});
Et deuxièmement, "this" est un élément DOM en javascript et "$ (this)" est un élément jQuery qui fait référence à l'élément DOM. En savoir plus sur le sujet à jQuery's this: demystified .
Vous cliquez sur une ancre, dont le comportement par défaut est de naviguer quelque part. Renvoyer faux peut être une tentative d'empêcher la navigation et de garder l'utilisateur sur la page/vue actuelle.
Dans la portée du gestionnaire de clics, this
est l'élément DOM non encapsulé. $(this)
l'enveloppe et retourne un élément jQuery. Il est courant d'envelopper une fois et de le rendre disponible dans l'étendue sous la forme that
, ou souvent $this
(le préfixe des noms de variable avec $ est une convention pour indiquer un élément jQuery).
Votre exemple pourrait donc s'écrire
$(function() {
$("body a").click(function() {
var $this = $(this);
alert($this.html());
return false;
});
});