507 votes

Conseils et astuces jQuery

La syntaxe

Le Stockage De Données

Optimisation

Divers

252voto

Andreas Grech Points 39188

Création d’un HTML élément et de garder une référence

Vérifier si un élément existe

Écrire vos propres sélecteurs

111voto

clawr Points 4043

La méthode data() jQuery est utile et mal connue. Il vous permet de lier des données aux éléments DOM sans modifier le DOM.

95voto

Nathan Long Points 30303

Filtres d'imbrication

Vous pouvez imbriquer des filtres (comme nickf montré ici ).

 .filter(":not(:has(.selected))")
 

80voto

Oli Points 65050

Je ne suis vraiment pas un fan de l' $(document).ready(fn) de raccourci. Assurez-vous qu'elle coupe vers le bas sur le code, mais il réduit également les chemin vers le bas sur la lisibilité du code. Quand vous voyez $(document).ready(...), vous savez ce que vous cherchez. $(...) est utilisé dans de trop nombreuses autres façons de faire sens.

Si vous disposez de plusieurs cadres, vous pouvez utiliser jQuery.noConflict(); comme vous le dites, mais vous pouvez également affecter une variable, comme ceci:

var $j = jQuery.noConflict();

$j("#myDiv").hide();

Très utile si vous avez plusieurs cadres de qui peut être cuit à l' $x(...)-style appels.

77voto

Filip Dupanović Points 10071

Ooooh, n'oublions pas les métadonnées jQuery ! La fonction data () est géniale, mais elle doit être remplie via les appels jQuery.

Au lieu de rompre la conformité W3C avec les attributs d'éléments personnalisés tels que:

 <input 
  name="email" 
  validation="required" 
  validate="email" 
  minLength="7" 
  maxLength="30"/> 
 

Utilisez des métadonnées à la place:

 <input 
  name="email" 
  class="validation {validate: email, minLength: 2, maxLength: 50}" />

<script>
    jQuery('*[class=validation]').each(function () {
        var metadata = $(this).metadata();
        // etc.
    });
</script>
 

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