前言

想做夜间模式很久了,只是苦于JS小白,不会操作Cookie,最近看到QQ爹的《网站夜间模式的实现》

这个功能主要包括三个部分夜间模式开关按钮:用来手动切换夜间模式的,自动存储显示模式 Cookie。

自动夜间模式:当显示模式 Cookie 为空时并且浏览器时间大于等于22点小于6点时会自动进入夜间模式,并存储 Cookie。

后端处理:PHP判断是否有显示模式 Cookie,有的话直接输出夜间 class,避免进入时网页闪烁。

具体操作

自动根据时间输出夜间模式类名

引入夜间模式CSS

可以在原来的style.css里新增样式就行.dark {

background-color: #333;

color: #eee;

}

.dark a:color {

color: #fafafa;

}

...

只要是夜间模式的CSS,增加.dark选择器

指定时间进入夜间模式

JS代码来自QQ爹function autoNightMode() {

if (document.cookie.replace(/(?:(?:^|.*;\s*)nightMode\s*\=\s*([^;]*).*$)|^.*$/, "$1") === '') {

if (new Date().getHours() >= 22 || new Date().getHours() < 6) {

$('body').addClass('dark');

document.cookie = "nightMode=1;path=/"

console.log('夜间模式开启');

} else {

$('body').removeClass('dark');

document.cookie = "nightMode=0;path=/"

console.log('夜间模式关闭');

}

} else {

var night = document.cookie.replace(/(?:(?:^|.*;\s*)nightMode\s*\=\s*([^;]*).*$)|^.*$/, "$1") || '0';

if (night == '0') {

console.log('夜间模式关闭');

} else if (night == '1') {

$('body').addClass('dark');

console.log('夜间模式开启');

}

}

}

autoNightMode();

html实现网页夜间模式,通过JS和PHP实现网站夜间模式的自动切换相关推荐

  1. 大学生影视主题网页制作 HTML+CSS+JS仿360影视网站 dreamweaver电影HTML网站制作

    HTML实例网页代码, 本实例适合于初学HTML的同学.该实例里面有设置了css的样式设置,有div的样式格局,这个实例比较全面,有助于同学的学习,本文将介绍如何通过从头开始设计个人网站并将其转换为代 ...

  2. 大学生影视主题网页制作 HTML CSS JS仿360影视网站 dreamweaver电影HTML网站制作

    HTML实例网页代码, 本实例适合于初学HTML的同学.该实例里面有设置了css的样式设置,有div的样式格局,这个实例比较全面,有助于同学的学习,本文将介绍如何通过从头开始设计个人网站并将其转换为代 ...

  3. 大学生游戏静态HTML网页设计 (HTML+CSS+JS仿英雄联盟网站15页)

  4. html 网页黑夜模式,网站添加暗黑模式html+js

    有些时候我们喜欢大半夜不睡觉刷抖音刷微博,突发奇想为什么我们不能让网站在夜间的时候自动打开夜间模式,让网页背景变暗,让图片变暗,这样那些夜猫观看我们的博客时候就不会那么刺眼啦,哈哈.话不多说,上教程! ...

  5. 夜间模式 css,网站夜间模式的实现

    整体流程 夜间模式开关按钮:用来手动切换夜间模式的,会存储cookie. 自动夜间模式:当cookie为空时,浏览器时间大于22点小于6点时会自动进入夜间模式,并存储cookie. 后端配合:php判 ...

  6. html 黑夜模式,网站夜间模式的实现

    整体流程 夜间模式开关按钮:用来手动切换夜间模式的,会存储cookie. 自动夜间模式:当cookie为空时,浏览器时间大于22点小于6点时会自动进入夜间模式,并存储cookie. 后端配合:php判 ...

  7. 苹果手机夜间模式怎么设置_微信怎么设置夜间模式?iPhone夜间模式设置教程 省电又护眼!...

    最近有小伙伴后台留言问了这样一个问题,微信怎么设置夜间模式?首先微信APP目前本身并没有加入夜间模式,如果觉得夜间看手机刺眼的话,可以开启手机自动的夜间模式,大多数安卓和iOS手机都支持,开启后不仅更 ...

  8. oppo计算机的夜间模式,怎样关闭oppo手机桌面的夜间模式?

    怎样关闭oppo手机桌面的夜间模式?以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 怎样关闭oppo手机桌面的夜间模式? ...

  9. JS常用的设计模式(7)—— 外观模式

    JS常用的设计模式(7)-- 外观模式 外观模式(门面模式),是一种相对简单而又无处不在的模式.外观模式提供一个高层接口,这个接口使得客户端或子系统更加方便调用. 用一段再简单不过的代码来表示 var ...

最新文章

  1. Android多媒体分析-通过MediaStore获取Audio信息
  2. UVa 11063 - B2-Sequence
  3. Python学到什么程度可以面试工作?
  4. 并发编程——进程——进程的同步与数据共享
  5. 关于数组相关乱七八糟
  6. PowerPoint 蜜蜂跳“8”字舞实例
  7. TreeSet—————我们认知的集合
  8. 定位CPU异常抖动---tomcat热部署的坑[转载]
  9. 一个根据用户名生成头像的库——@multiavatar/multiavatar在react中的使用
  10. ie浏览器点击打印没反应_ie浏览器无响应怎么回事?ie浏览器点击没有反应解决方法分享...
  11. 51单片机通过74HC595控制8位数码管,在任意位置显示数字
  12. 详细解释JavaScript中三元表达式
  13. contiki 学习资料
  14. 年薪16薪,工作福利靠砸钱 ?在京东做测试员原来这么爽
  15. 计算机四种传播途径,计算机病毒的传播途径
  16. Java用for循环嵌套*输出一个长方形
  17. Linux命令入门教程(三):文件基础篇
  18. mybatis-plus配置逻辑删除
  19. D1net阅闻:微信支付上线新一轮鼓励金活动
  20. 传统客服压力山大,如何应用智能客服打造直击痛点的解决方案?

热门文章

  1. 2.1设备树的规范(dts和dtb)——DTS格式
  2. java毕业设计的在线古玩市场系统的设计与实现mybatis+源码+调试部署+系统+数据库+lw
  3. RBF径向基函数简介
  4. JSP验证码系列(数字验证码、英文与数字混合验证码、中文验证码、表达式验证码)
  5. Kettle8.2连接组件之合并记录
  6. APP性能测试工具Emmagee的使用总结
  7. 白杨SEO:如何利用B站权重在百度搜索关键词排名进行精准引流?
  8. Python数组转字符串互转详细操作
  9. SQLyog13.1.1-Ultimate安装
  10. 高颜值手机首选,OPPO R11s星幕新年版用设计征服年轻人!