Могу предложить свой вариант (реализован на своей программе о рандомном бросании кубика) правда не знаю на сколько он рандомен
var i;
var sh = 0;
var prov = new Array(8);
function izm(){
i = Math.random();
i *= 100;
i = Math.round(i);
if((i > 20)||(i == 0)){izm();return}
prov[sh] = i;
for(k = 0; k < prov.length; k++){
if(sh == k) break;
if(prov[sh] == prov[k]){izm();return}
}
alert("<img src=\""+i+".jpg\" width=100 height=100>");//здесь алерт надо на document.write сменить
sh++
if(sh < 8) izm();
}
izm()