Maison > interface Web > js tutoriel > jQuery $.data() vs $.attr() : quand utiliser lequel ?

jQuery $.data() vs $.attr() : quand utiliser lequel ?

DDD
Libérer: 2024-12-16 18:33:12
original
959 Les gens l'ont consulté

jQuery $.data() vs. $.attr(): When to Use Which?

JQuery Data vs Attr : comprendre les différences

Dans jQuery, $.data et $.attr sont utilisés pour manipuler les attributs dans le DOM éléments. Cependant, ils répondent à des objectifs distincts et diffèrent par leur utilisation et leur comportement.

Quand utiliser $.data

$.data est principalement utilisé pour stocker des données associées à un Élément DOM dans le cache interne de jQuery ($.cache). Ces données ne sont pas stockées sous forme d'attributs HTML sur l'élément lui-même. Par conséquent, si vous devez stocker des données de manière persistante à des fins de liaison de données ou de scripts personnalisés, $.data est le choix préféré.

Exemple :

<a>
Copier après la connexion
Copier après la connexion
$('#foo').data('myData', 'someValue');
// Gets the stored data
$('#foo').data('myData'); // outputs "someValue"
Copier après la connexion

Quand utiliser $.attr

$.attr, en revanche, définit principalement ou récupère les attributs de données HTML5. Ces attributs de données sont stockés en tant qu'attributs sur l'élément DOM et sont destinés à fournir des métadonnées ou du contenu supplémentaires.

Exemple :

<a>
Copier après la connexion
Copier après la connexion
$('#foo').attr('data-attribute'); // outputs "myCoolValue"
$('#foo').attr('data-attribute', 'newValue'); // Sets the data-attribute to "newValue"
Copier après la connexion

Considérations supplémentaires

  • Le stockage de données avec $.data prend en charge les objets complexes, alors que HTML les attributs de données ne peuvent contenir que des chaînes.
  • $.data convertit automatiquement les valeurs dans leurs types appropriés lors de la récupération de données, comme la conversion de "true" en booléen.
  • $.attr préserve le type de données d'origine lors de la récupération des données.
  • Pour éviter toute confusion, il est recommandé d'utiliser la syntaxe camelCase lors de l'accès aux données stockées avec $.data.
  • Vous pouvez également utiliser $.removeAttr pour supprimer les attributs de données, qui n'ont pas d'équivalent direct avec $.data.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal