此代码显示没有错误但无法正常工作,任何人都能看到原因吗?
function setStyles(){
var ya
styles=document.getElementById("back");
switch (ya){
case 1:styles.style.backgroundColor='#FF0000';
break;
case 2:styles.style.backgroundColor='#FF6600';
break;
case 3:styles.style.backgroundColor='#FFFF66';
break;
case 4:styles.style.backgroundColor='#669900';
break;
case 5:styles.style.backgroundColor='#000066';
break;
case 6:styles.style.backgroundColor='#660066';
break;
}
}
window.onload = setStyles;
答案 0 :(得分:1)
如果您定义ya:
,则有效function setStyles(ya){
var ya;
styles=document.getElementById("back");
switch (ya) {
case 1:
styles.style.backgroundColor='#FF0000';
break;
case 2:
styles.style.backgroundColor='#FF6600';
break;
case 3:
styles.style.backgroundColor='#FFFF66';
break;
case 4:
styles.style.backgroundColor='#669900';
break;
case 5:
styles.style.backgroundColor='#000066';
break;
case 6:
styles.style.backgroundColor='#660066';
break;
}
}
window.onload = function() {
setStyles(1);
};
答案 1 :(得分:0)
因为ya
未定义,所以不会匹配任何case语句。尝试定义它(换句话说,给它一个值):
var ya = 1;
您还可以定义一个default
案例,如果其他案例陈述都不匹配,将会执行该案例:
...
...
case 6:
styles.style.backgroundColor='#660066';
break;
default:
styles.style.backgroundColor='#000000';
...
编辑:获取随机背景颜色:
var ya = Math.floor(Math.random() * 6) + 1;