Присвоить один и тот же цвет, выбранный случайным образом из массива, всем элементам одного класса - PullRequest
0 голосов
/ 14 февраля 2020

У меня есть эта функция, чтобы назначать один и тот же цвет, выбранный случайным образом из массива, всем элементам одного класса, но элементы получают разные цвета в одно и то же время. Теперь функция работает, но каждый элемент h2 получает свой цвет. Мне бы хотелось, чтобы все элементы h2 с классом "change_color" каждый раз получали один и тот же цвет.

jQuery(document).ready(function() {
var colors = ["#FFB24A", "#ED145B", "#55D3D2", "#E8390F", "#787878"];
jQuery(".change_color h2").each(function() {
    jQuery(this).css("color", colors[Math.floor(Math.random() * colors.length)]);
});
});

Что мне нужно изменить, чтобы применить один и тот же цвет ко всем элементам? Спасибо.

1 Ответ

1 голос
/ 14 февраля 2020

Способ, которым вы реализовали, вычисляет диапазон для каждой итерации. Сначала нужно получить случайный цвет, затем назначить все H2.

jQuery(document).ready(function() {
    var colors = ["#FFB24A", "#ED145B", "#55D3D2", "#E8390F", "#787878"];
    var randomColor = colors[Math.floor(Math.random() * colors.length)];
    jQuery(".change_color h2").each(function() {
        jQuery(this).css("color", randomColor);
    });
});
...