mdui
Version:
实现 material you 设计规范的 Web Components 组件库
17 lines (16 loc) • 682 B
JavaScript
import { $ } from '@mdui/jq/$.js';
import '@mdui/jq/methods/addClass.js';
import '@mdui/jq/methods/removeClass.js';
/**
* 在当前页面、或指定元素上设置主题。
* @param theme 要设置的主题。值为 `light`、`dark` 或 `auto`
* @param target 在该元素上设置主题。可以是 CSS 选择器、DOM 元素、或 JQ 对象。默认为 `<html>` 元素
*/
export const setTheme = (theme, target = document.documentElement) => {
const $target = $(target);
const themes = ['light', 'dark', 'auto'];
const prefix = 'mdui-theme-';
$target
.removeClass(themes.map((theme) => prefix + theme).join(' '))
.addClass(prefix + theme);
};