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

如何用原生JavaScript判断元素类名并执行对应主题函数?

解决方案:根据按钮主题类执行对应函数

方法一:原生JavaScript(推荐,无需依赖jQuery)

直接用原生JS的classList.contains()方法检查类名,同时通过this传递当前点击的按钮元素,避免选择器歧义:

修改后的HTML:

<button id="fullscreen" class="fullscreen dark" onclick='checkClass(this)'> Fullscreen </button>

对应的JavaScript函数:

function checkClass(btn) {
    if (btn.classList.contains('dark')) {
        openFullscreenDark();
    } else if (btn.classList.contains('light')) {
        openFullscreenLight();
    }
}

方法二:修复jQuery版本

如果要继续用jQuery,先确保页面已引入jQuery库,再优化选择器精度(比如通过ID定位按钮,避免匹配多个元素):

修改后的JavaScript函数:

function checkClass() {
    const fullscreenBtn = $('#fullscreen');
    if (fullscreenBtn.hasClass('dark')) {
        openFullscreenDark();
    } else if (fullscreenBtn.hasClass('light')) {
        openFullscreenLight();
    }
}

也可以通过this传递当前元素,让逻辑更通用:
HTML:

<button id="fullscreen" class="fullscreen dark" onclick='checkClass(this)'> Fullscreen </button>

JS:

function checkClass(btn) {
    const $btn = $(btn);
    if ($btn.hasClass('dark')) {
        openFullscreenDark();
    } else if ($btn.hasClass('light')) {
        openFullscreenLight();
    }
}

原代码失效的可能原因

  1. 未引入jQuery库,导致$函数无法识别
  2. 使用.fullscreen类选择器可能匹配多个元素,触发逻辑的对象错误

内容的提问来源于stack exchange,提问作者Fiercewolf 123

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 12:52:54