Javascript 如何更改代码以同时启动SetTimeout?

Javascript 如何更改代码以同时启动SetTimeout?,javascript,settimeout,Javascript,Settimeout,如何更改代码,使其同时开始闪烁,并且仍然是无限的 函数blink(){ 如果(!toggleSwitch){ for(设i=0;i

如何更改代码,使其同时开始闪烁,并且仍然是无限的

函数blink(){ 如果(!toggleSwitch){

for(设i=0;i
}
此外,我不能切换类,因为通过拖放,我可以在运行期间随时更改背景颜色,因此每个形状都有一个对象,其中保留了背景的颜色

我想你要找的是
setInterval
。有关基本功能闪烁示例,请参见下文

让red=true;
设squares=document.queryselectoral('.squares');
设置间隔(()=>{
红色=!红色;
for(设i=0;i
.square{
高度:50px;
宽度:50px;
利润率:10px;
背景色:#FFF;
}
瑞德先生{
背景色:#F00;
}

对不起,我弄错了。我不能切换类,因为通过拖放,我可以在运行期间随时更改背景颜色,因此每个形状都有一个对象,其中保留了背景的颜色。
    for (let i = 0; i < elements.length; i++) {
        shapes.push(elements[i].className);

    }
    // Start off at the first element.
    let i = 0;
    let len = shapes.length;

    // Do the next link
    function doNext() {

        let element = shapes[i];
        i++;

        eval(element).fillColor = eval(element).setColor;
        document.getElementById(element).style.backgroundColor = (eval(element).fillColor===document.getElementById(element).style.backgroundColor) ? 'white' : eval(element).setColor ;

        if (i < len) {
            // Don't do anything special
        }  else {
            // Reset the counter
            i = 0;
        }
        myVar = setTimeout(doNext, 1000);      }

    // And the code needs kicked off somewhere
    doNext();
}