$(function (){
function red(){
function changeFontRed() // Черный сменяется на Красный
{
$('#red').toggleClass('red-black');
$('#red').toggleClass('red');
}
setTimeout(changeFontRed, 1500 )
}
function yellow(){
function changeFontYellow() // Черный сменяется на Желтый
{
$('#yellow').toggleClass('yellow-black');
$('#yellow').toggleClass('yellow');
}
setTimeout(changeFontYellow, 1500 )
}
function green(){
function changeFontGreen() // Черный сменяется на Зеленый
{
$('#green').toggleClass('green-black');
$('#green').toggleClass('green');
}
setTimeout(changeFontGreen, 1500 )
}
setTimeout(red,0)
setTimeout(yellow,0)
setTimeout(green,0)
});
const makeColor = ({selector, startClass = 'black', endClass, timeOut = 1000, }, i = 0) =>
() => new Promise((resolve) => {
setTimeout(() => {
const node = document.querySelector(selector);
const isEven = i % 2 === 0;
node.classList.remove(isEven ? startClass : endClass);
node.classList.add(isEven ? endClass : startClass);
i++;
resolve();
}, timeOut)
});
const red = makeColor({selector: '.red-item', endClass: 'red'});
const green = makeColor({selector: '.green-item', endClass: 'green'});
const yellow = makeColor({selector: '.yellow-item', endClass: 'yellow'});
red()
.then(green)
.then(yellow);
$(function (){
var toRed = true;
function red(){
function changeFontRed() // Черный сменяется на Красный
{
$('#red').toggleClass('red-black');
$('#red').toggleClass('red');
yellow();
}
setTimeout(changeFontRed, 1500 )
}
function yellow(){
function changeFontYellow() // Черный сменяется на Желтый
{
$('#yellow').toggleClass('yellow-black');
$('#yellow').toggleClass('yellow');
if(toRed) { red(); }
else { green(); }
toRed = !toRed; // для желтого будем менять направление по этой переменной
}
setTimeout(changeFontYellow, 1500 )
}
function green(){
function changeFontGreen() // Черный сменяется на Зеленый
{
$('#green').toggleClass('green-black');
$('#green').toggleClass('green');
yellow();
}
setTimeout(changeFontGreen, 1500 )
}
green(); // сразу зажигаем только 1 из цветов
});