0
Просто интересно, почему мой код не работает. Я делаю это совершенно неправильно?Как назначить случайный цвет для ссылок?
window.onload = function random() {
var links = document.getElementsByTagName('a');
var colours = new Array("green","red","blue");
var randomColour = colours[Math.floor(colours.length * Math.random())];
for (a = 0; a < links.length; a++) {
links[a].style.color = 'randomColour';
}
}
Wow спасибо, такое простое решение проблемы! – Harry
Вопреки тому, что вы утверждаете, это не * гарантирует *, что каждая ссылка получает другой цвет. Лучше всего было бы перетасовать массив цветов. Конечно, если есть больше ссылок, чем цвета, вы все равно не можете присвоить уникальный цвет ... просто говоря :) –
@FelixKling Каждая ссылка получает один из цветов в массиве: http://jsfiddle.net/V6Chb/. Итак, когда массив содержит «красный» и «зеленый», и этот код используется на странице с, скажем, 1000 ссылками, то по крайней мере одна ссылка красная, и по крайней мере одна из них зеленая (в большинстве случаев). –