js按钮随意切换背景颜色的原理
<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>Document</title><scrip...
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script>
var Arraycolor=new Array("white","red","black","green");
var i=0;
function bianse() {
if(i == (Arraycolor.length-1))
i = 0;
i++;
document.bgColor=Arraycolor[i];
}
</script>
</head>
<body>
<button onclick="bianse()">变色</button>
</body>
</html>
这段代码里:if(i == (Arraycolor.length-1))
i = 0;
是什么意思,或者是什么作用啊,为什么要==length-1啊 展开
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script>
var Arraycolor=new Array("white","red","black","green");
var i=0;
function bianse() {
if(i == (Arraycolor.length-1))
i = 0;
i++;
document.bgColor=Arraycolor[i];
}
</script>
</head>
<body>
<button onclick="bianse()">变色</button>
</body>
</html>
这段代码里:if(i == (Arraycolor.length-1))
i = 0;
是什么意思,或者是什么作用啊,为什么要==length-1啊 展开
1个回答
展开全部
i初始化为0,
If(i == (Arraycolor.length-1)) //如果i等于Arraycolor的最大数量减1
i++ // 也就是你每次点击 i都会累加 也就是每次执行一次减1, Arraycolor是个数组
If(i == (Arraycolor.length-1)) //如果i等于Arraycolor的最大数量减1
i++ // 也就是你每次点击 i都会累加 也就是每次执行一次减1, Arraycolor是个数组
更多追问追答
追问
为什么i≠0或者不是-1就不能实现循环呢?,只有最大数量减一吗。
本来是要实现红黑绿三个颜色循环的,但是这样就需要在前面再加一个,为什么0.0
每次执行-1,一共四个数组0 1 2 3的话,一直减怎么循环呢?
追答
if(i == (Arraycolor.length-1))
i = 0;
i++;
document.bgColor=Arraycolor[i];
上面的第二行的 i=0 改成 i=-1; 就不用多加了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询