vedi se ti può servire. Nota: l'esempio va adattato. Le immagini le nominerei all'incirca così:
img_0, img_1, ..., img_29
codice:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Pagina senza titolo</title>
<script language="javascript" type="text/javascript">
// <!CDATA[
window.onload = function()
{
//vettore del percorso delle immagini
var v = ["/ArchivioEsempi2/immagini/aggiorna.gif",
"/ArchivioEsempi2/immagini/annulla.gif",
"/ArchivioEsempi2/immagini/cancella.gif"
];
//vettore degli indici dei percorsi delle immagini
//in sequenza casuale
var vr = getRandomIndex(v);
//aggiungo le immagini al contenitore
for(var i = 0; i < vr.length; i++)
{
var img = document.createElement("img");
img.setAttribute("src", v[vr[i]]);
document.getElementById("div1").appendChild(img);
document.getElementById("div1").appendChild(document.createElement("br"));
document.getElementById("div1").appendChild(document.createElement("br"));
}
}
//restituisce un vettore con gli elementi di array
//in sequenza casuale
function getRandomIndex(array)
{
var n = array.length;
//creo un vettore di indici
var a = new Array(n);
for(var i = 0; i < n; i++) a[i] = i;
//mescolo gli indici
for(var i = a.length - 1; i > 0; i--)
{
//scambio l'elemento i-esimo con un elemento
//il cui indice è nell'intervallo [0-i]
/*
nota: ho scelto [0-i] e non [0-i[ per dare la possibilità
di non scambiare l'elemento (anche questo è casuale)
*/
var j = random(0, i);
var tmp = a[i];
a[i] = a[j];
a[j] = tmp;
}
return a;
}
//restituisce numero casuale compreso tra min e Max, compresi
function random(min, Max)
{
return Math.floor(min + (Math.random() * (Max - min + 1)));
}
// ]]>
</script>
</head>
<body>
<h3>Posizionamento di tre immagini in ordine casuale</h3>
<div id="div1"></div>
</body>
</html>