jQuery addClass/removeClass在调试期间工作,但不能正常执行

jQuery addClass/removeClass working during debugging but not regular execution

本文关键字:常执行 但不能 执行 工作 removeClass addClass 调试 jQuery      更新时间:2024-06-10

我正在尝试运行一系列元素,并在恢复正常之前切换每个元素的不透明度一段给定的时间。我试过使用延迟、队列和睡眠功能,但没有成功。奇怪的是,我只是注意到,当我处于调试模式时,事情完全按照预期进行。然而,在调试模式之外,事情根本不起作用。以下是我目前试图在forEach()循环中运行的内容:

$currEl.toggleClass("light");
sleep(1000);
$currEl.toggleClass('light');

以下是完整的代码:https://jsfiddle.net/qdzsws7b/

繁忙的等待可能很危险。尝试使"sequence"answers"index"成为全局变量,然后用setTimeout切换类。

var currSequence, currIndex;
function playSequence(sequence){
    currSequence = sequnece;
    currIndex = 0;
    changeLight();
}
function changeLight(){
    if (currIndex > 0){
        $('#' + mapping[currSequence[currIndex - 1]]).toggleClass('light');
    }
    $('#' + mapping[currSequence[currIndex++]]).toggleClass('light');
    if(currIndex < currSequence.length)
        setTimeout(changeLight, 1000);
}
相关文章: