Puis-je ajouter un attribut personnalisé à une balise HTML comme le suivant?
<tag myAttri="myVal" />
html
custom-attribute
Lovespring
la source
la source
Réponses:
Vous pouvez modifier votre déclaration! DOCTYPE (c'est-à-dire DTD) pour l'autoriser, afin que le document [XML] soit toujours valide:
#IMPLIED
signifie qu'il s'agit d'un attribut facultatif, ou que vous pouvez utiliser#REQUIRED
, etc.Plus d'informations sont dans DTD - Attributs .
la source
<meta http-equiv="content-type" content="application/xhtml+xml" />
.data-
.Vous pouvez ajouter des attributs personnalisés à vos éléments à volonté. Mais cela rendra votre document invalide.
En HTML 5, vous aurez la possibilité d'utiliser des attributs de données personnalisés avec un préfixe
data-
.la source
|
n'est pas autorisé dans un csshref
, mais c'est ce qui est nécessaire pour Google FontsNon, cela interrompra la validation.
En HTML 5, vous pouvez / pourrez ajouter des attributs personnalisés. Quelque chose comme ça:
la source
La
data()
fonction jQuery vous permet d'associer des données arbitraires à des éléments DOM. Voici un exemple .la source
En HTML5: oui: utilisez l' attribut data- .
la source
Oui, vous pouvez, vous l' avez fait dans la question elle - même:
<html myAttri="myVal"/>
.la source
la source
Oui, vous pouvez le faire!
Avoir le
HTML
tag suivant :Nous pouvons accéder à leurs attributs avec
JavaScript
:Element.setAttribute()
mettre l'attribut dans laHTML
balise s'il n'existe pas. Ainsi, vous n'avez pas besoin de le déclarer dans leHTML
code si vous voulez le définir avecJavaScript
.key
: pourrait être n'importe quel nom que vous désirez pour l'attribut, alors qu'il n'est pas déjà utilisé pour la balise actuelle.value
: c'est toujours une chaîne contenant ce dont vous avez besoin.la source
Vous pouvez définir des propriétés à partir de JavaScript.
la source
Voici l'exemple:
Voici un autre exemple comment définir des attributs personnalisés dans l'élément de balise body:
Lisez ensuite l'attribut par:
Vous pouvez tester le code ci-dessus dans la console dans DevTools, par exemple
la source
utiliser des données, je les utilise beaucoup
la source
data-*
valeurs de JavaScript?Une autre approche, qui est propre et gardera le document valide, consiste à concaténer les données que vous voulez dans une autre balise, par exemple id, puis à utiliser split pour prendre ce que vous voulez quand vous le voulez.
la source
Vous pouvez ajouter, mais vous devez également écrire une ligne de code JavaScript,
pour vous assurer que tout est bien en place. Je veux dire Internet Explorer :)
la source
<tag ...>
ici signifie apparemment n'importe quelle balise HTML.bien! vous pouvez réellement créer un tas d'attributs HTML personnalisés en déguisant les attributs de données en ce que vous voulez réellement.
par exemple.
Cela fonctionne apparemment mais cela invaliderait votre document, il n'est pas nécessaire d'utiliser JScript pour que vous ayez des attributs personnalisés ou même des éléments, sauf si vous le devez, il vous suffit de traiter vos nouveaux attributs formulés (personnalisés) de la même manière que vous traitez votre attribut "data"
N'oubliez pas que "invalide" ne veut rien dire. Le document se chargera parfaitement à tout moment. et certains navigateurs valideraient votre document uniquement par la présence de DOCTYPE ....., vous savez ce que je veux dire.
la source
Vous pouvez faire quelque chose comme ceci pour extraire la valeur que vous voulez de JavaScript au lieu d'un attribut:
la source
<input type="hidden" value="...">
. Considérez, cependant, la différence entre le type de données que vous mettez dans divers attributs par rapport aux données que vous pourriez mettre dans un champ caché. Cacher un<span>
(de toutes choses) dans un<a>
but de maintenir un morceau de métadonnées n'est pas une bonne chose. Il serait propre à votre site et très dépendant de JS (dégradation gracieuse, personnes).