WordPress添加夜间模式cookie版 -7b2主题修改
将下列代码放入子主题 child.js 文件中
//夜间模式
(function(){
if(document.cookie.replace(/(?:(?:^|.*;\s*)night\s*\=\s*([^;]*).*$)|^.*$/, "$1") === ''){
if(new Date().getHours() > 22 || new Date().getHours() < 6){
document.body.classList.add('night');
document.cookie = "night=1;path=/";
console.log('夜间模式开启');
}else{
document.body.classList.remove('night');
document.cookie = "night=0;path=/";
console.log('夜间模式关闭');
}
}else{
var night = document.cookie.replace(/(?:(?:^|.*;\s*)night\s*\=\s*([^;]*).*$)|^.*$/, "$1") || '0';
if(night == '0'){
document.body.classList.remove('night');
}else if(night == '1'){
document.body.classList.add('night');
}
}
})();
//夜间模式切换
function switchNightMode(){
var night = document.cookie.replace(/(?:(?:^|.*;\s*)night\s*\=\s*([^;]*).*$)|^.*$/, "$1") || '0';
if(night == '0'){
document.body.classList.add('night');
document.cookie = "night=1;path=/"
console.log('夜间模式开启');
}else{
document.body.classList.remove('night');
document.cookie = "night=0;path=/"
console.log('夜间模式关闭');
}
}
将下列代码加入到 主题或子主题 header.php 文件中
具体位置 在17行后
<?php echo($_COOKIE['night'] == '1' ? 'night' : ''); ?>
将下列代码放入想要展示的地方即可调用切换开关.
<a href="javascript:switchNightMode()" rel="external nofollow" rel="external nofollow" target="_self">查看效果</a>
比如跟本站一样的位置,
b2/Modules/Templates/Header.php 406行插入下面代码,
<div class="top-search-icon mobile-show"><a href="javascript:switchNightMode()" rel="external nofollow" rel="external nofollow" target="_self"><svg class="icon" aria-hidden="true"><use xlink:href="#icon-liangdu" rel="external nofollow" ></use></svg></a></div>
最后,调试CSS,body.night xxx ,xxx覆盖替换的css样式,body.night .site 是把背景颜色降低亮度
body.night .site{
background-color: #353535;
}
阅读剩余
提示:本文最后更新于2024年10月27日,如有错误或者已经失效,请留言告知。
THE END