mp-darkmode
October 24, 2025 · View on GitHub
English | 简体中文
mp-darkmode
微信公众平台 Dark Mode 转换算法。
安装
1. 下载模块
下载最新版本。
或者通过 npm 安装:
npm i mp-darkmode
2. 引入模块
(1) 如果未使用 AMD/CMD 规范,可直接在 HTML 中以 <script> 方式引入模块:
<script src="path/to/darkmode.min.js"></script>
<script>
// 运行Dark Mode转换算法
Darkmode.run(document.body.querySelectorAll('*')); // 处理body下的所有DOM节点
</script>
(2) 如果使用了 AMD/CMD 规范,可使用 require() 方式引入模块:
var Darkmode = require('path/to/darkmode.min.js');
// 运行Dark Mode转换算法
Darkmode.run(document.body.querySelectorAll('*')); // 处理body下的所有DOM节点
基本用法
Darkmode.run(nodes[, options])
nodes<DOM Object Array> 要进行 Dark Mode 转换的 DOM 节点数组。options<Object> Dark Mode 转换算法配置项。options.error<Function> 发生 error 时触发的回调。err<Error> 错误对象。
options.mode<string> 强制指定的颜色模式( dark | light ),指定了就不监听系统颜色。- ...
- ...
- ...
运行 Dark Mode 转换算法。
Darkmode.run(document.body.querySelectorAll('*'), {
mode: 'dark', // 强制指定深色模式
... // 其它配置项
});
更多详细用法可参考 API。
插件
从 v1.1.0 开始支持插件,可以在转换过程中进行自定义操作,比如过滤 DOM 属性。插件的使用方法如下:
Darkmode.extend([pluginA, pluginB, pluginC]);
如果你想编写自己的 Dark Mode 插件,可以参考这里。
处理原则
最佳实践
贡献
算法持续更新优化中,如果你有好的想法,可以 Fork 本项目后提交你的代码,具体开发可参考开发手册。