Attr
====


 Este tipo representa um atributo de elemento DOM como um objeto. Na maioria dos métodos DOM, você provavelmente irá retornar diretamente o atributo como uma string (e.g., `Element.getAttribute()`, mas certas funções (e.g., `Element.getAttributeNode()` (en-US)) ou meios de iteração retornam tipos `Attr`.

EventTarget

Node

Attr

**Aviso:** Começando no Gecko 7.0, os que serão removidos mostram mensagens de aviso no console. Você deve revisar seu código de acordo. Veja métodos e propriedades descontinuadas para uma lista completa.

Propriedades
------------

`name` (en-US) Somente leitura 

O nome do Atributo.

`namespaceURI` (en-US) Somente leitura 

Uma `DOMString` representando o namespace URI do atributo, ou `null` se não há namespace

`localName` Somente leitura 

Uma `DOMString` representando a parte local do nome qualificado do atributo.

`prefix` (en-US) Somente leitura 

Uma `DOMString` representando o prefixo do namespace do atributo ou `null` se nenhum prefixo foi especificado.

`ownerElement` (en-US) Somente leitura 

O elemento que possui o atributo.



**Nota:** DOM Level 4 removeu esta propriedade. Foi suposto que como você recebe um objeto `Attr` de um `Element`, você já deve saber qual é o elemento associado.
 Como isto não é sempre verdadeiro em casos como objetos `Attr` sendo retornados pelo `Document.evaluate` (en-US), o DOM Living Standard reintroduziu a propriedade.


Gecko mostra uma mensagem de descontinuação começando no Gecko 7.0. Esta mensagem foi removida novamente no Gecko 49.0.

Propriedades e métodos descontinuados
-------------------------------------

As seguintes propriedades e métodos foram descontinuados. Quando disponíveis, são substituidas adequadamente.

`attributes`

Esta propriedade agora sempre retorna `NULL`.

`childNodes`

Esta propriedade agora sempre retorna `NULL`.

`firstChild`

Esta propriedade agora sempre retorna `NULL`.

`lastChild`

Esta propriedade agora sempre retorna `NULL`.

`nextSibling`

Esta propriedade agora sempre retorna `NULL`.

`nodeName`

Use `Attr.name` (en-US) no lugar.

`nodeType`

Esta propriedade agora sempre retorna 2 (`ATTRIBUTE_NODE`).

`nodeValue`

Use `Attr.value` (en-US) no lugar.

`ownerDocument`

Provavelmente você nunca utilizou isto, então você não se importa que isso vai desaparecer.

`ownerElement`

Desde que você obtenha o objeto `Attr` de um `Element`, você já conhece os elementos associados.

`parentNode`

Esta propriedade agora sempre retorna `NULL`.

`previousSibling`

Esta propriedade agora sempre retorna `NULL`.

`specified`

Esta propriedade agora sempre retorna `true`.

`textContent`

Use `Attr.value` (en-US) no lugar.

Os seguintes métodos foram reprovados:

`appendChild()`

Modifique o valor de `Attr.value` (en-US) no lugar.

`cloneNode()`

Provavelmente você nunca utilizou isto, então você não se importa que isso vai desaparecer.

`createAttribute()`

Use `Element.setAttribute()` no lugar.

`createAttributeNS()`

Use `Element.setAttributeNS()` no lugar.

`getAttributeNode()`

Use `Element.getAttribute()` no lugar.

`getAttributeNodeNS()`

Use `Element.getAttributeNS()` (en-US) no lugar.

`hasAttributes()`

Este método agora sempre retorna false.

`hasChildNodes()`

Este método agora sempre retorna false.

`insertBefore()`

Modifique o valor de `Attr.value` (en-US) no lugar.

`isEqualNode()`

Provavelmente você nunca utilizou isto, então você não se importa que isso vai desaparecer.

`normalize()`

Provavelmente você nunca utilizou isto, então você não se importa que isso vai desaparecer.

`removeAttributeNode()`

Use `Element.removeAttribute()` no lugar.

`removeChild()`

Modifique o valor de `Attr.value` (en-US) no lugar.

`replaceChild()`

Modifique o valor de `Attr.value` (en-US) no lugar.

`setAttributeNode()`

Use `Element.setAttribute()` no lugar.

`setAttributeNodeNS()`

Use `Element.setAttributeNS()` no lugar.

Especificações
--------------

* Document Object Model Core level 3: Interface Attr
* Document Object Model 4: Interface Attr