Ti consiglio di provare a fare un esercizio, magari ti risulta pi� chiaro:
prova a creare 3 bottoni, tutti con la stessa classe, class="mieiBottoni".
Ad ogni bottone assegni un id diverso, bottone1, bottone2, bottone3.
Poi registri un unico ascoltatore sulla classe "mieiBottoni",
getElementsByClassName chiamando la funzione miaFunzione al click di un elemento.
All'interno della funzione che chiami fai un alert(this.id);
Prova a vedere cosa succede...
Roberto
Roberto, in un'altra discussione, mi suggeriva di richiamare gli elementi di una classe con alert(this.id) dove this indica la classe e id è l'identificatore degli elementi.
Ho costruito qui sotto, per esercizio, 2 classi: bottoni e bottoni2, i cui elementi sono individuati rispettivamente dagli indici 0, 1, 2, 3 sia per la prima che per la seconda classe.
Essendo io poco esperto di classi, chiedevo aiuto a Roberto per costruire una classe i cui elementi fossero individuati da un identificatore id, invece che da un indice, così da poterli richiamare con alert(this.id). Devo precisare che ho provato a usare gli id nel mio esercizio, ma inutilmente.
Grazie
lanvoel
codice:
<html>
<body>
<form name="form1">
<input type="button" class="bottoni" value="pulsante1 - classe bottoni - indice 0"><br>
<input type="button" class="bottoni" value="pulsante2 - classe bottoni - indice 1"><br>
<input type="button" class="bottoni" value="pulsante3 - classe bottoni - indice 2"><br>
<input type="button" class="bottoni" value="pulsante4 - classe bottoni - indice 2"><br><br>
<input type="button" class="bottoni2" value="pulsante5 - classe bottoni2 - indice 0"><br>
<input type="button" class="bottoni2" value="pulsante6 - classe bottoni2 - indice 1"><br>
<input type="button" class="bottoni2" value="pulsante7 - classe bottoni2 - indice 2"><br>
<input type="button" class="bottoni2" value="pulsante8 - classe bottoni2 - indice 3"><br><br>
<input type="button" id="button5" name="button5" value="sposta i pulsanti chiamando classe e indice" onclick="cambia()"><br>
</form>
<script language=JavaScript>
function cambia()
{
var x=1;
var y=1;
var classe=prompt("scegli una classe:", "bottoni");
var indice=prompt("scegli un indice:", "0");
if (indice == "0" && classe=="bottoni") {x="300"; y="0"}
if (indice == "1" && classe=="bottoni") {x="300"; y="30"}
if (indice == "2" && classe=="bottoni") {x="300"; y="60"}
if (indice == "3" && classe=="bottoni") {x="300"; y="90"}
if (indice == "0" && classe=="bottoni2") {x="800"; y="0"}
if (indice == "1" && classe=="bottoni2") {x="800"; y="30"}
if (indice == "2" && classe=="bottoni2") {x="800"; y="60"}
if (indice == "3" && classe=="bottoni2") {x="800"; y="90"}
var elemento = document.getElementsByClassName(classe);
elemento[indice].style.backgroundColor = "cyan";
elemento[indice].style.fontSize="20";
elemento[indice].style.backgroundColor="cyan";
elemento[indice].style.borderColor="blue";
elemento[indice].style.color="red";
elemento[indice].style.position="absolute";
elemento[indice].style.top =y;
elemento[indice].style.left =x;
}
</script>
</body>
</html>