2016-03-25 4 views
3

В принципе. Я создаю страницу предварительного загрузчика для моего сайта. Я хочу, чтобы значок в середине страницы менялся каждый раз, когда посетитель приходил на мою страницу. Мне нужно выбрать переменную или строку в массиве.выберите значение из массива на основе var

Мой код:

$(document).ready(function() { 
    //randomly pick a number an pick an icon to show on main page 

    //Math.floor(Math.random() * 6) + 1 [from SOF] 

    var min = 1, 
    max = 8; 

    var number = Math.floor(Math.random() * (max - min + 1) + min); 

    var icons = ['preload/img/audio.svg', 'preload/img/bars.svg', 'preload/img/grid.svg', 'preload/img/oval.svg', 'preload/img/puff.svg', 'preload/img/rings.svg', 'preload/img/tail-spin.svg', 'preload/img/three-dots.svg']; 

    alert(number); 
}); 

Я не пытался alert(icons.get(numbers));, но никогда не работал. Я искал какое-то время и не могу понять.

+0

Ehh 'icons [number]'? для выбора источника, но все равно нужно будет установить его на значке, а также post html –

+3

Возможный дубликат [Получить случайный элемент из массива JavaScript] (http://stackoverflow.com/questions/5915096/get-random-item -from-javascript-array) – Vanojx1

ответ

1

Вам необходимо получить значок, используя index.

Кроме того, для random, она возвращает поплавок между 0 и 1, так как массив 0 на основе, и у вас есть 8 пунктов, вам нужно: -

$(document).ready(function() { 
 

 
    var number = Math.round(Math.random() * 7); 
 

 
    var icons = ['preload/img/audio.svg', 'preload/img/bars.svg', 'preload/img/grid.svg', 'preload/img/oval.svg', 'preload/img/puff.svg', 'preload/img/rings.svg', 'preload/img/tail-spin.svg', 'preload/img/three-dots.svg']; 
 

 
    alert(icons[number]); 
 

 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

+0

Ahh да. Я закодирован в VB.NET и использовал индекс для массивов, но я думал, что JavaScript и jQuery работают по-разному. Спасибо вам за помощь. –

0
var icons = ['preload/img/audio.svg', 'preload/img/bars.svg', 'preload/img/grid.svg', 'preload/img/oval.svg', 'preload/img/puff.svg', 'preload/img/rings.svg', 'preload/img/tail-spin.svg', 'preload/img/three-dots.svg']; 
var imageNum = Math.floor(Math.random()*icons.length); 
document.getElementById("myIcon").src = icons[imageNum]; 

Где «myIcon» - это идентификатор изображения, которое вы хотите изменить.

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