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
875 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!

source:php.cn
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