Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript使背景颜色变暗_Javascript - Fatal编程技术网

Javascript使背景颜色变暗

Javascript使背景颜色变暗,javascript,Javascript,你知道为什么这行不通吗?当按下CTRL+向下箭头键时,应该会使页面背景颜色变暗。(从“中交”开始) var color=“cccc”; var isCtrl=false; document.onkeyup=函数(e){ 如果(e.which==17)isCtrl=false; } document.onkeydown=函数(e){ 如果(e.which==17)isCtrl=true; 如果(例如which==40&&isCtrl==true){ 如果(color.length>6){color

你知道为什么这行不通吗?当按下CTRL+向下箭头键时,应该会使页面背景颜色变暗。(从“中交”开始)

var color=“cccc”;
var isCtrl=false;
document.onkeyup=函数(e){
如果(e.which==17)isCtrl=false;
}
document.onkeydown=函数(e){
如果(e.which==17)isCtrl=true;
如果(例如which==40&&isCtrl==true){
如果(color.length>6){color=color.substring(1,color.length)}
var rgb=parseInt(颜色,16);
var r=Math.abs((rgb>>16)和0xFF)+1;if(r>255)r=r-(r-255);
var g=Math.abs((rgb>>8)和0xFF)+1;如果(g>255)g=g-(g-255);
变量b=Math.abs((rgb&0xFF)+1);如果(b>255)b=b-(b-255);
r=Number(r<0 | | isNaN(r))?0:((r>255)?255:r);
如果(r.length==1)r='0'+r;
g=数字(g<0 | | isNaN(g))?0:((g>255)?255:g);
如果(g.length==1)g='0'+g;
b=数字(b<0 | | isNaN(b))?0:((b>255)?255:b);
如果(b.length==1)b='0'+b;
var color=r+g+b;
document.body.style.backgroundColor=“#”+color;
}
}

这是一段令人讨厌的小代码:

var color=r + g + b;
它正在改变颜色的范围,使其始终处于未定义状态。这会在调用
color.length
时引发错误,因为undefined没有length属性。换成

color=r + g + b;
编辑:


哦,是的。演示:(仅供参考按下ctrl键查看效果)

这是一段令人讨厌的小代码:

var color=r + g + b;
它正在改变颜色的范围,使其始终处于未定义状态。这会在调用
color.length
时引发错误,因为undefined没有length属性。换成

color=r + g + b;
编辑:

哦,是的。演示:(仅供参考,按下ctrl键查看效果)

尝试以下操作:

var color = 204; // "cc" in decimal;

document.documentElement.onkeydown = function(e) {
    e = e || window.event;
    var c = e.which || e.keyCode;
    if( c == 40 && e.ctrlKey) {
        color = Math.max(color-8,0);
        document.body.style.backgroundColor = "rgb("+color+","+color+","+color+")";
    }
}
请尝试以下方法:

var color = 204; // "cc" in decimal;

document.documentElement.onkeydown = function(e) {
    e = e || window.event;
    var c = e.which || e.keyCode;
    if( c == 40 && e.ctrlKey) {
        color = Math.max(color-8,0);
        document.body.style.backgroundColor = "rgb("+color+","+color+","+color+")";
    }
}
当您在尝试设置document.body.style.backgroundColor的行之前发出警告(颜色)时会发生什么情况?当您在尝试设置document.body.style.backgroundColor的行之前发出警告(颜色)时会发生什么情况?