Salve a tutti!
Ho già chiesto consigli altrove ma sembra un problema di poco interesse....

Ho una box di larghezza fissa in cui c'è lo spazio per tre immagini (banner) disposte orizzontalmente.
Qui dovrebbero essere caricate tre immagini prese casualmente da una cartella specifica (cartella dei banner..) ed in sequenza random ognuna dovrebbe apparire con un effettino di dissolvenza (tipo quello che ho visto essere il "fade pulse" o una qualsiasi dissolvenza simile..).

Ecco i passaggi che ho svolto fin'ora.....
Ho cercato di sviluppare del codice javascript per
1) contare le immagini nella cartella (totale dei banner di cui 3 casuali vanno caricati)

Codice HTML:
var k = 0;
function conta() {
  var img = new Image();
  img.src = "banner/banner" + (k++) + '.jpg';
  img.onload = conta;
  img.onerror = allafinefaiquesto;
}

function allafinefaiquesto() {
  /*alert(k);*/
  totImg = k-1;
  alert(totImg);
  mostra_banner(totImg);
}

2) mostrare i tre banner casuali

Codice HTML:
function mostra_banner(totImg) {
img = new Array()

for (var i=0; i<3; i++) {
ran = Math.floor(totImg * Math.random());
document.write("<img src=\"banner/banner"+ran+".jpg\">");
}
}
Ovviamente all'interno del body c'è il richiamo javascript alla prima funzione "conta();".
La domanda è:
come faccio ad evitare che vengano fuori dei numeri casuali uguali? E' capitato a volte nei miei test che venisse fuori banner9.jpg per due volte, etc... c'è un modo? Purtroppo sono ancora troppo ignorante in javascript per saperlo!

Inoltre, quando applicherò l'effetto jQuery o Scriptaculous (consigli in merito? non ho mai usato queste cose...), le immagini si caricheranno appunto con un effetto di dissolvenza/pulse/etc.. ma avrei bisogno che ciò accadesse in momenti diversi (cioè prima il secondo, poi il primo, per ultimo il terzo... uno dopo l'altro ma in ordina casuale!) anche questo è possibile?

Grazie mille! Spero possiate aiutarmi!