Sommario
attributes restituisce una collezione degli attributi presenti nell'elemento dato.
Sintassi e valori
var collAttributes = RiferimentoAllElemento.attributes;
L'oggetto collezione restituito è del tipoNamedNodeMap. Se nell'elemento non vi è specificato alcun attributo, l'oggetto restituito avrà lunghezza 0. Questo attributo è di sola lettura.
collAttributes è un riferimento alla collezione di attributi.
Esempio
// prende il primo elemento <p> nel documento
var para = document.getElementsByTagName("p")[0];
var atts = para.attributes;
Note
L'oggetto restituito è di tipo NamedNodeMap, chiamato anche collezione , che è una lista non ordinata di nodi oggetti. I nomi e i valori delle proprietà dell'oggetto attributes sono accessibili usando l'indice, come nell'esempio seguente, che prende la coppia nome/valore del primo attributo del paragrafo "p1" nel documento:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"https://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Attributes example</title>
<script type="text/javascript">
function showFirstAttr()
{
var FirstParg = document.getElementById("p1");
var outputText = document.getElementById("result");
//se il nostro elemento possiede degli attributi
if (FirstParg.hasAttributes())
{//visualizziamo il nome e il valore del primo attributo
outputText.value = FirstParg.attributes[0].name + "->"
+ FirstParg.attributes[0].value;
}
else
{
outputText.value = "Non ci sono attributi"
};
}
</script>
</head>
<body>
<p id="p1" style="color: green;">Sample Paragraph</p>
<form action="">
<p><input type="button" value="Mostra nome e valore del primo attributo"
onclick="showFirstAttr();">
<input id="result" type="text" value=""></p>
</form>
</body>
</html>
L'oggetto attributes è una
collezione
che è una specie di array, con la proprietà length e le proprietà attribute accessibili attraverso un indice(e anche attraverso il nome dell'attributo), ma non ha i metodi specifici degli array, come ad esempio join, split, etc.
L'ordine delle proprietà nella collezione attributes è arbitrario— due browser, dallo stesso identico markup, possono restituire un oggetto attributes con le proprietà in un diverso ordine.
Per accedere uno specifico attributo, usa il metodo getAttribute o usa la dot notation .
// Mostra l'id dell'elemento, se presente
if(element.id)
{
alert("L'id di element è " + element.id);
}
else
{
alert("element non ha id");
};