使用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 相关文章推荐
jquery跟js初始化加载的多种方法及区别介绍
Apr 02 Javascript
在jquery boxy中添加百度地图坐标拾取注意流程
Apr 03 Javascript
一个通过script自定义属性传递配置参数的方法
Sep 15 Javascript
javascript中的正则表达式使用详解
Aug 30 Javascript
javascript实现五星评分功能
Nov 10 Javascript
JS中改变this指向的方法(call和apply、bind)
Mar 26 Javascript
EasyUI为Numberbox添加blur事件的方法
Mar 05 Javascript
vue axios登录请求拦截器
Apr 02 Javascript
jQuery的Ajax接收java返回数据方法
Aug 11 jQuery
js实现动态添加上传文件页面
Oct 22 Javascript
javascript/jquery实现点击触发事件的方法分析
Nov 11 jQuery
Javascript实现鼠标移入方向感知
Jun 24 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
实例(Smarty+FCKeditor新闻系统)
2007/01/02 PHP
php PDO中文乱码解决办法
2009/07/20 PHP
php curl获取网页内容(IPV6下超时)的解决办法
2013/07/16 PHP
什么是OneThink oneThink后台添加插件步骤
2016/04/13 PHP
PHP Ajax实现无刷新附件上传
2016/08/17 PHP
JQuery优缺点分析说明
2010/06/09 Javascript
javascript温习的一些笔记 基础常用知识小结
2011/06/22 Javascript
Jquery增加鼠标中间功能mousewheel的实例代码
2013/09/05 Javascript
javascript禁用Tab键脚本实例
2013/11/22 Javascript
教你在heroku云平台上部署Node.js应用
2014/07/30 Javascript
jQuery淡入淡出元素让其效果更为生动
2014/09/01 Javascript
jquery中filter方法用法实例分析
2015/02/06 Javascript
详解JavaScript中Date.UTC()方法的使用
2015/06/12 Javascript
javascript数组随机排序实例分析
2015/07/22 Javascript
Bootstrap每天必学之日期控制
2016/03/07 Javascript
深入理解JavaScript继承的多种方式和优缺点
2017/05/12 Javascript
vue中动态绑定表单元素的属性方法
2018/02/23 Javascript
js的继承方法小结(prototype、call、apply)(推荐)
2019/04/17 Javascript
JS实现从对象获取对象中单个键值的方法示例
2019/06/05 Javascript
python创建和使用字典实例详解
2013/11/01 Python
python获取当前日期和时间的方法
2015/04/30 Python
Python对文件操作知识汇总
2016/05/15 Python
python编程实现12306的一个小爬虫实例
2017/12/27 Python
pyqt5简介及安装方法介绍
2018/01/31 Python
基于python实现名片管理系统
2018/11/30 Python
python利用thrift服务读取hbase数据的方法
2018/12/27 Python
Python3 执行系统命令并获取实时回显功能
2019/07/09 Python
python框架django项目部署相关知识详解
2019/11/04 Python
HTML5之web workers_动力节点Java学院整理
2017/07/17 HTML / CSS
澳大利亚顶级美发和美容贸易超市:glamaCo
2020/01/19 全球购物
计算机数据库专业职业生涯规划书
2014/02/08 职场文书
2014社会治安综合治理工作总结
2014/12/04 职场文书
政府会议通知范文
2015/04/15 职场文书
介绍信怎么写
2015/05/05 职场文书
pytorch model.cuda()花费时间很长的解决
2021/06/01 Python
python单元测试之pytest的使用
2021/06/07 Python