使用javascript为网页增加夜间模式

 如何给Web页面增加夜间模式功能? 其实所谓的夜间模式就是在页面上增加一个透明的遮罩层,但是遮罩层会挡住页面元素, 解决方法是 添加DIV,给DIV的outline属性一个很大的outline-width值,用outline的边框作为遮罩,这样既能正常点击页面元素,又能达到夜间模式的效果

HTML+CSS:
 
 代码如下:
<div class="cover"></div>
 
代码如下:
<style>
.cover{
    position:fixed;
    top: 0px;
    left: 0px;
    outline:5000px solid rgba(0, 0, 0, 0.3);
    z-index: 99999;
}
</style>
 
 
接着用JavaScript写个夜间模式plus:
 
 代码如下:
<script>
var brightness;
//显示遮罩
function cover(brightness) {
    if (typeof(div) == 'undefined') {
        div = document.createElement('div');
        div.setAttribute('style', 'position:fixed;top:0;left:0;outline:5000px solid;z-index:99999;');
        document.body.appendChild(div);
    } else {
        div.style.display = '';
    }
    div.style.outlineColor = 'rgba(0,0,0,' + brightness + ')';
}
//事件监听
window.addEventListener('keydown', function(e) {
    if (e.altKey && e.keyCode == 90) { //Alt+Z:打开夜间模式
        cover(brightness = 0.3);
    }
    if (e.altKey && e.keyCode == 88) { //Alt+X:关闭
        cover(brightness = 0);
    }
    if (e.altKey && e.keyCode == 38) { //Alt+↑:增加亮度
        if (brightness - 0.05 > 0.05) cover(brightness -= 0.05);
    }
    if (e.altKey && e.keyCode == 40) { //Alt+↓:降低亮度
        if (brightness + 0.05 < 0.95) cover(brightness += 0.05);
    }
}, false);
</script>
 
 
还可以写成GreaseMonkey脚本,作为浏览器扩展给任意页面增加夜间模式

时间: 2024-12-22 05:04:19

使用javascript为网页增加夜间模式的相关文章

使用javascript为网页增加夜间模式_javascript技巧

HTML+CSS: 复制代码 代码如下: <div class="cover"></div> 复制代码 代码如下: <style>.cover{    position:fixed;    top: 0px;    left: 0px;    outline:5000px solid rgba(0, 0, 0, 0.3);    z-index: 99999;}</style> 接着用JavaScript写个夜间模式plus: 复制代码

360浏览器夜间模式怎么使用

  最近小编夜间上网浏览网页的时间过长,导致天天眼睛红肿胀痛,本来就好几百的近视了,时间长下去,肯定会有失明的风险,为此小编为大家带来一个不影响显示的整体效果,单独调节浏览器亮度的一个方法. 360浏览器夜间模式的使用方法 1.这里小编以360浏览器为例子,打开360浏览器,点击扩展插件市场即小编红框标记的位置: 2.然后在360浏览器的插件市场搜索"夜间模式",然后点击安装--添加: 3.最后添加好后,就会看到扩展栏有一个"小太阳"的图标,点击一下就成了"

如何在Safari的阅读视图中开启夜间模式?

  在 iOS 9 之前苹果自带的 Safari 是不支持夜间模式的,那么如何在 iOS 9 的设备中开启 Safari 的夜间模式呢?下面小编就给大家介绍一下如何在Safari的阅读视图中开启夜间模式的方法. 1.打开你要在 Safari 中阅读的文章 2.如果该网页支持阅读视图模式,有一个多条横线的按钮会出现在 Safari 地址栏的左侧,点击它 3.现在你就进入了 Safari 的阅读视图模式(阅读视图模式简化了网页,隐藏了不必要展示的内容,例如广告.侧边栏项目) 4.点击地址栏右侧的 A

如何在Safari开启夜间模式

  1.打开你要在 Safari 中阅读的文章   2.如果该网页支持阅读视图模式,有一个多条横线的按钮会出现在 Safari 地址栏的左侧,点击它   3.现在你就进入了 Safari 的阅读视图模式(阅读视图模式简化了网页,隐藏了不必要展示的内容,例如广告.侧边栏项目)   4.点击地址栏右侧的 AA 按钮,然后会呈现很多选项在你眼前,选择黑色即可进入夜间模式   除了背景颜色之外,你还可以在这里选择不同的字体或者颜色,iOS 9 全新的阅读视图模式为用户提供了更多权限,那么现在你期待 iO

UC手机版浏览器的夜间模式如何实现

问题描述 UC手机版浏览器的夜间模式如何实现 在做一个项目,类似UC手机版浏览器的夜间模式如何实现,跳转的网页界面呢?是加蒙版,还是主题切换? 解决方案 在功能的选择上,有夜间模式这个标签 解决方案二: 在功能的选择上,有夜间模式这个标签 解决方案三: 在功能的选择上,有夜间模式这个标签 解决方案四: 在功能的选择上,有夜间模式这个标签 解决方案五: 在功能的选择上,有夜间模式这个标签 解决方案六: 在功能的选择上,有夜间模式这个标签

谷歌推出Sidewiki允许用户为任何网页增加注释

习惯了跟风的网络传媒对待此似乎多了些谨慎,除了人民网和屈指可数的平面媒体报道了这个消息以外,几乎都采取了静默姿态. 外界并不知道,一贯习惯大开大阖的网络传媒低调的原因在于,它们还没有做好如何应对这个话语霸龙的准备,除了百度.新浪.雅虎这些网络大佬能感受到它的威胁之外,常人是很难想象出谷歌推出的这款网络会话工具有什么样的威力. 事实上,赛的维克不是一个实质性的攻击性武器,也不是病毒,更不是流氓软件,它只是用户可以在任何一个网页上发表意见的评论框. 从外表看,它于传统网页上的用户评论框没有什么不同,

JavaScript驾驭网页-DOM_javascript技巧

一.DOM全称 文档对象模型(Document Object Model) 二.DOM是什么 DOM就是一个编程接口,就是一套API. DOM是针对HTML文档.XML等文档的一套API.就类似于JDBC是针对数据库的一套API一样. 三.DOM的用途 DOM 是用来访问或操作HTML文档.XHTML文档.XML文档中的节点元素. 现在基本上所有的浏览器都都执行了W3C发布的DOM规范,所以在浏览器上就可以用DOM的这些API. DOM提供对脚本友善的网页结构与内容的视图 DOM把网页视为节点构

Android主题切换之探究白天和夜间模式_Android

智能手机的迅速普及,大大的丰富了我们的娱乐生活.现在大家都喜欢晚上睡觉前玩会儿手机,但是应用的日间模式往往亮度太大,对眼睛有较为严重的伤害.因此,如今的应用往往开发了 日间和夜间 两种模式供用户切换使用,那日间和夜间模式切换究竟是怎样实现的呢? 在文字类的App上面基本上都会涉及到夜间模式.就是能够根据不同的设定.呈现不同风格的界面给用户.而且晚上看着不伤眼睛.实现方式也就是所谓的换肤(主题切换).对于夜间模式的实现网上流传了很多种方式.这里先分享一个方法给大家.通过设置背景为透明的方法.降低屏

Android实现日夜间模式的深入理解_Android

在本篇文章中给出了三种实现日间/夜间模式切换的方案,三种方案综合起来可能导致文章的篇幅过长,请耐心阅读.     1.使用 setTheme 的方法让 Activity 重新设置主题:     2.设置 Android Support Library 中的 UiMode 来支持日间/夜间模式的切换:     3.通过资源 id 映射,回调自定义 ThemeChangeListener 接口来处理日间/夜间模式的切换. 一.使用 setTheme 方法 我们先来看看使用 setTheme 方法来实