Je pense à l'utilisation d'attributs personnalisés dans Jquery pour éviter d'utiliser des attributs de classe ou d'id, pour ne pas interférer avec les concepteurs html.
Compte tenu de cette idée, le html devrait être des éléments comme:
<ul Jquery="CommonUl"> <li Jquery="CommonLi"></li> <li Jquery="CommonLi"></li> <li Jquery="CommonLi"></li> <li Jquery="CommonLi"></li> <li Jquery="CommonLi"></li> </ul>
Pensez-vous que c'est une bonne approche?
Quelle est votre opinion sur la validation du W3C de ces attributs personnalisés?
Connaissez-vous un moyen de programmer avec Jquery sans interférer avec le travail des concepteurs html?
À propos de la performance, je suppose que, avec les attributs de classe ou les identifiants, les sélecteurs jquery sont plus rapides que l'utilisation d'un attribut personnalisé et des fonctions de filtrage comme "contient, etc. …". Est-ce correct?
Vous pouvez le faire, utiliser data-
attributs de data-
( partie de la spécification HTML5 ), comme ceci:
<li data-something="CommonLi"></li>
JQuery a même un support intégré dans 1.4.3+, par exemple:
$("li").data("something") //"CommonLi"
Pour vos autres questions:
Si vous prévoyez d'avoir plusieurs attributs, je suggère de définir un attribut namespac unique, par exemple
<li data-yourapp>...</li>
Et utiliser cet attribut comme un hachage
$("li").data("yourapp", { points : 2000, life : 1, weapons : { firegun : 0, missiles : 12 } });
De cette façon, vous réduisez l'accès aux éléments et vous récupérerez toutes les données personnalisées une fois
Je vous recommanderais personnellement d'utiliser la méthode jquery builtin pour enregistrer des données avec chaque élément. Voici l'extrait de code pour la sauvegarde des données:
$("ul").data("CommonUl"); $("li").data("CommonLi");