Je me demandais pourquoi dans tant de plugins de JQuery $ (Ceci) est prêt à pointer à $ ceci, voici un exemple, si j'ai les deux plugins suivants inclus sur une page:
(function($) { jQuery.fn.pluginTwo = function() { return this.each(function() { var trigger = $(this); <-- alert(trigger); }); }; })(jQuery)
3 Réponses :
$ Ceci est une personne standard utilise pour mettre en cache l'objet JQuery $ (Ceci) dans une variable.
Vous pouvez l'appeler ce que vous souhaitez, certaines personnes aiment y référer comme $ soi. P>
EG P>
var $self = $(this)
Le point serait que cela devrait être «var $ ceci» dans l'exemple ci-dessus, alors?
... de votre réponse, oui. Me considère comme la question initiale liée à $ CETTE SCOPING - et, en effet, que l'affiche est correcte (qu'une variable doit être locale) et qu'il suffit d'avoir deux plug-ins (a) utilisez-la comme une convention, non pas parce que Il a une signification inhérente et (b) ne le compromet pas correctement.
Si vous effectuez un certain nombre de commandes différentes avec un élément enveloppé dans un objet JQuery, il est plus performant pour obtenir l'élément (comme un ensemble emballé) une seule fois et stocker cela dans une variable locale Notez l'utilisation de var code> à la portée locale
CUT code> p> p> p>
dans jQuery, $ code> est un caractère légitime pour les noms de variable et de fonction dans JavaScript. Cela pourrait être déroutant si vous venez de PHP où
$ code> est utilisé uniquement pour signifier une variable uniquement (m'a prise de temps pour réaliser). P>
$ code> est un alias pour la fonction
jQuery code>, qui est la fonction principale qui gère la sélection DOM.
$ ("# Header ul.Menu") code> est identique à celui
jQuery ("# en-tête UL.Menu") code>.
$ code> est simplement utilisé pour la brièveté. p> li>
Ce code> est un terme spécial en JavaScript (pas JQ), ce qui signifie que l'élément actuel (dans les formulaires, vous pouvez voir
this.submit () code> par exemple). p> li>
$ (this) code> signifie "appelez la fonction
jQuery code> avec JavaScript
ce code>". p> l> li>
$ CU code> est simplement une variable, car
$ code> est un caractère valide. Vous pouvez définir
$ CU code> à n'importe quelle valeur que vous aimez et il est entièrement non liée au
de JavaScript, ce code>. En général, je suggère d'utiliser $ pour les noms de variables pour éviter toute confusion avec la fonction JQuery. Cependant, il peut être utile d'utiliser
$ var code> pour désigner des objets JQuery par opposition aux variables JavaScript normales. P> li>
ul>
En fait, je suggère d'utiliser $ comme premier caractère d'une variable lors de l'utilisation de jQuery. Je l'utilise tout le temps pour désigner le fait qu'une certaine variable est un objet JQuery, tel que $ ceci = $ (ceci).
@Em c'est une idée fine i>, je pense que je pourrais commencer sur cela.
Juste pour clarifier ... dans l'exemple ci-dessus $ ('. MyotherClass'). Plugintwo (); retournera le premier élément de la matrice suivante: $ ('. myclass')