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


Posted in Javascript onJanuary 26, 2014

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脚本,作为浏览器扩展给任意页面增加夜间模式

Javascript 相关文章推荐
syntaxhighlighter 使用方法
Jul 02 Javascript
JQuery 无废话系列教程(二) jquery实战篇上
Jun 23 Javascript
基于jquery扩展漂亮的下拉框可以二次修改
Nov 19 Javascript
jquery新的绑定事件机制on方法的使用方法
Apr 15 Javascript
使用JQ来编写最基本的淡入淡出效果附演示动画
Oct 31 Javascript
javascript 事件处理示例分享
Dec 31 Javascript
javascript背景时钟实现方法
Jun 18 Javascript
vue webpack开发访问后台接口全局配置的方法
Sep 18 Javascript
angularJs在多个控制器中共享服务数据的方法
Sep 30 Javascript
React中阻止事件冒泡的问题详析
Apr 12 Javascript
vue-cli创建的项目中的gitHooks原理解析
Feb 14 Javascript
JavaScript 中判断变量是否为数字的示例代码
Oct 22 Javascript
jQuery:delegate中select()不起作用的解决方法(实例讲解)
Jan 26 #Javascript
javascript:FF/Chrome与IE动态加载元素的区别说明
Jan 26 #Javascript
js中的时间转换—毫秒转换成日期时间的示例代码
Jan 26 #Javascript
JS将所有对象s的属性复制给对象r(原生js+jquery)
Jan 25 #Javascript
手机平板等移动端适配跳转URL的js代码
Jan 25 #Javascript
Extjs中RowExpander控件的默认展开问题示例探讨
Jan 24 #Javascript
jquery批量设置属性readonly和disabled的方法
Jan 24 #Javascript
You might like
PHP 遍历XP文件夹下所有文件
2008/11/27 PHP
PHP include_path设置技巧分享
2011/07/03 PHP
php记录日志的实现代码
2011/08/08 PHP
解析PHP缓存函数的使用说明
2013/05/10 PHP
php获取淘宝分类id示例
2014/01/16 PHP
PHP 面向对象程序设计(oop)学习笔记 (五) - PHP 命名空间
2014/06/12 PHP
Laravel Intervention/image图片处理扩展包的安装、使用与可能遇到的坑详解
2017/11/14 PHP
CI框架(CodeIgniter)实现的导入、导出数据操作示例
2018/05/24 PHP
用javascript获得地址栏参数的两种方法
2006/11/08 Javascript
JSON JQUERY模板实现说明
2010/07/03 Javascript
使用js正则控制input标签只允许输入的值
2013/07/29 Javascript
根据选择不同的下拉值出现相对应的文本输入框
2013/08/01 Javascript
javascript实现获取服务器时间
2015/05/19 Javascript
轻松学习jQuery插件EasyUI EasyUI实现拖动基本操作
2015/11/30 Javascript
基于JS实现的笛卡尔乘积之商品发布
2016/05/13 Javascript
JavaScript解八皇后问题的方法总结
2016/06/12 Javascript
Vue2仿淘宝实现省市区三级联动
2020/04/15 Javascript
vue 移动端适配方案详解
2018/11/15 Javascript
Nuxt.js 数据双向绑定的实现
2019/02/17 Javascript
微信小程序自定义导航栏实例代码
2019/04/05 Javascript
JS去除字符串最后的逗号实例分析【四种方法】
2019/06/20 Javascript
JS实现长图上下滚动效果
2020/03/19 Javascript
JS实现简单打字测试
2020/06/24 Javascript
Python3里的super()和__class__使用介绍
2015/04/23 Python
Python中用max()方法求最大值的介绍
2015/05/15 Python
Python3实现对列表按元组指定列进行排序的方法分析
2018/12/22 Python
python将处理好的图像保存到指定目录下的方法
2019/01/10 Python
通过Turtle库在Python中绘制一个鼠年福鼠
2020/02/03 Python
基于Python共轭梯度法与最速下降法之间的对比
2020/04/02 Python
吉列剃须刀英国官网:Gillette英国
2019/03/28 全球购物
如何利用XMLHTTP检测URL及探测服务器信息
2013/11/10 面试题
公司培训心得体会
2014/01/03 职场文书
社团活动总结模板
2014/06/30 职场文书
工厂标语大全
2014/10/06 职场文书
检讨书格式
2019/04/25 职场文书
辞职信怎么写?
2019/05/21 职场文书