You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:点击正确答案触发confetti函数异常,错误答案点击也触发

问题修复方案

你的代码里confetti()已经放在了correct为true的分支里,理论上只有点击正确答案才会触发。现在错误答案也触发,大概率是调用setStatusClass时给错误答案的correct参数传了true,或者参数判断逻辑搞反了,按以下步骤排查修复:

  • 检查setStatusClass的调用逻辑
    找到你绑定点击事件、调用这个函数的代码,确保错误答案对应的调用中,correct参数传的是false。比如选择题场景的正确调用示例:

    // 示例:选项点击事件(替换成你自己的实际代码)
    document.querySelectorAll('.answer-option').forEach(option => {
      option.addEventListener('click', () => {
        // 根据实际逻辑判断当前选项是否正确,比如用data属性标记
        const isCorrect = option.dataset.isCorrect === 'true';
        // 确保这里把正确的布尔值传给correct参数
        setStatusClass(option, isCorrect);
      });
    });
    
  • 加日志排查参数值
    如果不确定参数是否传错,可以在setStatusClass里加日志,确认correct的实际值:

    function setStatusClass(element, correct){
        clearStatusClass(element);
        console.log('当前correct参数值:', correct); // 查看控制台输出的参数
        if(correct){
            element.classList.add('correct'); 
            confetti();
        }else{
            element.classList.add('wrong');
        }
    }
    
  • 排查confetti函数的其他调用
    检查项目中有没有其他地方直接调用了confetti(),比如错误答案的点击事件里有没有额外触发这个函数的代码。

内容的提问来源于stack exchange,提问作者Esteban Chiaromonte

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 07:36:23