2016-09-23 2 views
0

Итак, я создал цикл for, который создает (определяя на текстовом поле) количество изображений.JavaScript Получите случайное изображение в цикле for

E.g. Я набираю «23» в текстовом поле, и при нажатии кнопки он отображает 23 изображения, случайно помещенные на экран.

for(i=0; i < box2; i++) { 

    this.y = Math.floor(Math.random() * 100) + 1; 
    this.x = Math.floor(Math.random() * 100) + 1; 

    this.img = document.createElement("img"); 
    this.img.src = sourceArray[num]; 
    this.img.setAttribute("height", "100px"); 
    this.img.style.position = "absolute"; 
    this.img.style.top = this.y + "vh"; 
    this.img.style.left = this.x + "vw"; 
    this.img.addEventListener("click", Remove); 

    document.getElementById("bildausgabe").appendChild(this.img); 

} 

Я также уже есть массив, чтобы выбрать 1 из 3 случайных изображений, которые отлично работает, но он будет отображать только 1 из 3 для всех изображений. Когда я перезагружу, он выберет еще один из списка.

var sourceArray = ["strand.jpg","weg.jpg","haengematte.jpg"]; 
var num = Math.floor(Math.random() * 3); 

Как его изменить, чтобы он отображал все 3 изображения случайно?

например. Я набираю «12», нажимаю кнопку и получаю 12 изображений случайным образом из данных 3 источников.

ответ

0

Вы должны поместить строку

var num = Math.floor(Math.random() * 3); 

внутри цикла.

+0

Ох, такая глупая ошибка. Теперь работаем точно так, как ожидалось. Спасибо! – rekalar

Смежные вопросы