573 votes

jQuery $(this) vs ce

Je suis actuellement en train de travailler par le biais de ce tutoriel: débuter avec jQuery

Pour les deux exemples ci-dessous:

$("#orderedlist").find("li").each(function(i) {
  $(this).append(" BAM! " + i);
});


$("#reset").click(function() {
  $("form").each(function() {
    this.reset();
  });
});

Avis dans le premier exemple, nous utilisons $(this) pour ajouter du texte à l'intérieur de chaque élément li. Dans le deuxième exemple, nous allons utiliser "ce" directement lors de la réinitialisation de la forme.

$(this) semble être utilisé beaucoup plus souvent que this.

Ma conjecture est que dans le premier exemple, $() est la conversion de chaque li élément dans un objet jQuery qui comprend l' append() de la fonction tandis que dans le second exemple reset() peut être appelée directement sur le formulaire.

Fondamentalement, nous avons besoin d' $() spécial jQuery seule les fonctions.

Est-ce correct?

523voto

Spencer Ruport Points 24589

Oui, vous devez seulement $() lorsque vous utilisez jQuery. Si vous souhaitez que l’aide de jQuery pour le faire choses DOM il suffit de garder cela à l’esprit.

Chaque fois que vous revenez un ensemble d’éléments jQuery transforme fondamentalement il dans un tableau. Si vous savez que vous n’avez qu’un seul résultat, il va être dans le premier élément.

Et ainsi de suite...

370voto

Reigel Points 34008

``est la fonction de constructeur de jQuery.

``est une référence à l’élément DOM d’invocation.

donc, fondamentalement, dans , vous êtes juste de passage le en `` en tant que paramètre afin que vous pouvez appeler les méthodes jQuery et fonctions.

92voto

Alex King Points 782

Oui, vous avez besoin pour les fonctions de jQuery, mais lorsque vous voulez accéder aux méthodes javascript de base de l’élément qui n’utilisent pas jQuery, vous pouvez utiliser .

76voto

Fredrick Gauss Points 1473

Lorsque vous utilisez , il est conseillé d’utiliser habituellement. Mais si vous savez (vous devriez apprendre et connaître) la différence, parfois c’est plus pratique et plus rapide d’utiliser juste `` . Par exemple :

est plus facile et plus pur que

41voto

codemeit Points 9327

Oui, en utilisant $(this), vous avez activé des fonctionnalités jquery pour l’objet. Just « this », il a seulement des fonctionnalités javascript génériques.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X