--- title: HTMLElement.dataset slug: Web/API/HTMLElement/dataset translation_of: Web/API/HTMLOrForeignElement/dataset ---
{{ APIRef }}
A propriedade HTMLElement.dataset
permite o acesso, em modo de leitura e escrita, a todos os atributos de dados personalizado (data-*) no elemento. Ele é um mapa de DOMString, com uma entrada para cada atributo de dados personalizado.
O nome de um atributo de dados customizado inicia com data-
. Ele deve conter somente letras, números e os seguintes caracteres: dash (-
), dot (.
), collon(:
), underscore (_
). Além disso, ele não deve conter letras ASCII captalizadas (A
à Z
).
Um atributo de dados personalizado é transformado em uma chave para uma entrada no {{ domxref("DOMStringMap") }} de acordo com as seguintes regras
data-
é removido (incluindo o dash);U+002D
) seguido por uma ASCII letra minúscula (a
à z
), o dash é removido e a letra que segue é tranformada em maíscula;A transformação oposta, que mapeia uma chave para um nome de atributo, usa as seguintes regras:
a
à z
)(antes da transformação);data-
é adicionado;A
à Z
) é transformado em um dash seguido pela sua forma mínúscula;A restrição nas regras acima garantem que as duas trasnformações são inversa uma da outra.
Por exemplo, o atributo data-abc-def
corresponde a chave abcDef
.
string = element.dataset.camelCasedName; element.dataset.camelCasedName = string;
<div id="user" data-id="1234567890" data-user="johndoe" data-date-of-birth>John Doe </div> var el = document.querySelector('#user'); // el.id == 'user' // el.dataset.id === '1234567890' // el.dataset.user === 'johndoe' // el.dataset.dateOfBirth === '' el.dataset.dateOfBirth = '1960-10-03'; // set the DOB. // 'someDataAttr' in el.dataset === false el.dataset.someDataAttr = 'mydata'; // 'someDataAttr' in el.dataset === true
Espeficicação | Status | Comentário |
---|---|---|
{{SpecName('HTML WHATWG', "dom.html#dom-dataset", "HTMLElement.dataset")}} | {{Spec2('HTML WHATWG')}} | Sem mudanças desde o último snapshot, {{SpecName('HTML5.1')}} |
{{SpecName('HTML5.1', "dom.html#dom-dataset", "HTMLElement.dataset")}} | {{Spec2('HTML5.1')}} | Snapshot de {{SpecName('HTML WHATWG')}}, sem mudanças desde {{SpecName('HTML5 W3C')}} |
{{SpecName('HTML5 W3C', "dom.html#dom-dataset", "HTMLElement.dataset")}} | {{Spec2('HTML5 W3C')}} | Snapshot de {{SpecName('HTML WHATWG')}}, definição inicial. |
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-dataand send us a pull request.
{{Compat("api.HTMLElement.dataset")}}