javascript - style - title html
Atributos personalizados jquery (3)
Estoy pensando en usar atributos personalizados en Jquery para evitar el uso de atributos de clase o id, para no interferir con los diseñadores html.
Teniendo en cuenta esta idea, el html debería ser piezas como:
<ul Jquery="CommonUl">
<li Jquery="CommonLi"></li>
<li Jquery="CommonLi"></li>
<li Jquery="CommonLi"></li>
<li Jquery="CommonLi"></li>
<li Jquery="CommonLi"></li>
</ul>
¿Crees que este es un buen enfoque?
¿Cuál es su opinión acerca de la validación W3C de estos atributos personalizados?
¿Conoces alguna forma de programar con Jquery sin interferir con el trabajo de los diseñadores html?
Sobre el rendimiento, supongo que con los atributos de clase o identificadores, los selectores de jQuery son más rápidos que usar un atributo personalizado y funciones de filtrado como "contiene, etc.". ¿Es esto correcto?
Personalmente, le recomendaría usar el método integrado jquery para guardar datos con cada elemento. A continuación se muestra el fragmento de código para guardar datos:
$("ul").data("CommonUl");
$("li").data("CommonLi");
Puedes hacer esto, usar atributos de data-
( parte de la especificación HTML5 ), como esto:
<li data-something="CommonLi"></li>
jQuery incluso tiene soporte incorporado para estos en 1.4.3+, por ejemplo:
$("li").data("something") //"CommonLi"
Para tus otras preguntas:
- Validarán si es HTML5, pero no romperán nada en HTML4
- Esto no debería interferir con el diseñador, pero dependerá de qué diseñador
- Si está obteniendo de un elemento, el rendimiento es el mismo que cualquier otro atributo
Si planea tener varios atributos, sugiero establecer un atributo de espacio de nombre único, por ejemplo,
<li data-yourapp>...</li>
y usar ese atributo como una tabla hash
$("li").data("yourapp", {
points : 2000,
life : 1,
weapons : {
firegun : 0,
missiles : 12
}
});
De esta forma, reducirá el acceso a los elementos y recuperará todos los datos personalizados una vez.