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

函数外访问变量值异常:点击切换暗黑模式后logo图片不更新如何修复

问题原因

  • 切换逻辑错误:toggle函数内固定将dark设为false,没有实现状态切换,点击按钮后dark值永远不会回到true。
  • 条件判断语法错误:if (dark = false)使用了赋值运算符=,会直接给dark赋值为false,且判断结果永远为假,始终执行else分支加载黑色logo。
  • 执行逻辑位置错误:当前logo路径切换的代码仅在页面首次加载时执行一次,点击按钮触发toggle函数时不会重新运行这段逻辑,logo路径不会更新。

修复代码

删除原全局的if-else判断,将logo切换逻辑整合到toggle函数内,修正语法问题:

let dark = true;
function toggle() {
    // 切换dark状态
    dark = !dark;
    document.body.classList.toggle('dark-mode');
    // 每次切换都更新logo路径
    if (dark === false) {
        document.getElementById("logo").src = "../../img/Kevin D (White).png";
    } else {
        document.getElementById("logo").src = "../../img/Kevin D (Black).png";
    }
}

内容的提问来源于stack exchange,提问作者Kevin D

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 23:36:05