新增功能:新增主题自动夜间模式,可以自由调整时间

# 前言

实现判断当前时间实现自动夜间模式

# 实现自动夜间模式

  1. 在主题的 yaml 配置文件中,自定义新增配置项(自定义命名), 我在原本的 darkmode 项下面新增为

    darkmode: false
    # autodarkmode  新增主题自动夜间模式
    auto_dark:
      enable: true  #是否开启
      start: 21     #开始时间
      end: 6        #结束时间
  2. 代码还是在找到 themes->shoka->source->js->_app,以下修改还是在这里修改。

  3. 找到 global.js ,新增函数:

const autoDarkmode = function(){
  if(CONFIG.auto_dark.enable){
    if(new Date().getHours() >= CONFIG.auto_dark.start || new Date().getHours() <= CONFIG.auto_dark.end){
      changeTheme('dark');
    }else{
      changeTheme();
    }
  }
}
  1. 找到 pjax.js ,新增:
autoDarkmode()   // 新增

我个人的增加位置为大概 133 行

autoDarkmode()  // 在这里
visibilityListener()
themeColorListener()
algoliaSearch(pjax)
  1. 在 themes->shoka->scripts->generaters,找到 script.js 大概 21 行左右,可以在
favicon: {
  normal: theme.images + "/favicon.ico",
  hidden: theme.images + "/failure.ico"
},
darkmode: theme.darkmode,
auto_scroll: theme.auto_scroll,

中间修改为

favicon: {
  normal: theme.images + "/favicon.ico",
  hidden: theme.images + "/failure.ico"
},
darkmode: theme.darkmode,
auto_dark: theme.auto_dark,   // 新增
auto_scroll: theme.auto_scroll,

完成!

更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

Lavender 微信支付

微信支付

Lavender 支付宝

支付宝