У меня есть код, в котором есть место, заполненное квадратами, а внутри него - цветной квадрат, перемещающийся каждую секунду, у этого квадрата есть класс CSS для его цвета, поэтому он на самом деле не перемещается, просто добавляет новый класс к <span>
и удаляет его через секунду.
У меня есть функция, в которой я хочу изменить цвет квадрата, который будет работать следующим образом:
changeColor({R:50,G:200,B:50,A:1})
Я пытался заставить это работать, но у меня есть эта проблема:
Поскольку у меня есть функция добавления и удаления класса квадратного цвета, я не могу изменить имя класса CSS, оно должно быть таким же, иначе приложение не будет работать.
Если я использую .css("background", "rgba(" + R + "," + G + "," + B + "," + A + ")");
, это добавляет цвет к текущему <span>
навсегда.
Мне не удается заставить работать .attr()
, может быть, я делаю это неправильно.
Я пытался использовать .css
, .removeClass
, .addClass
и .attr
Ничего не сработало, возможно я не правильно его использую.
function changeColor(sqColor) {
R = sqColor.R;
G = sqColor.G;
B = sqColor.B;
A = sqColor.A;
$($("#container .sq_bullet a.sq_current > span")[0]).css("background", "rgba(" + R + "," + G + "," + B + "," + A + ")");
}
(это a.sq_current, потому что "span" находится внутри "a")
Полный код слишком длинный, чтобы его опубликовать, извините, воспринимайте его как действительно большое количество <span>
, в котором ничего нет, только атрибуты css.
Итак, цель состоит в том, чтобы изменить класс CSS:
#container .sq_bullet a.sq_current > span {
background: rgba(255,106,0,1);
}
к тому, что я ввел в функцию, например: changeColor({R:50,G:200,B:50,A:0.8})