2011-08-03 117 views
0

我是JavaScript的新手。我有以下代码,它表现得非常奇怪。这是什么假设要做的是最初将背景颜色设置为红色,然后在清除警告对话后循环一系列背景颜色。颜色名称目前采用字符串格式,但如果使用十六进制ID,则会导致相同的行为。document.body.style.backgroundColor的语法是什么?

通常,当页面加载时,它开始着色身体红色,就像它应该。第一次警报清除有时会将背景更改为橙色,有时不会更改,因为下一个对话(黄色,绿色,蓝色,靛蓝,黑色)会被清除,直到最后一次更换颜色为止,这有时需要,有时不会。

<html> 
<head> 
<title>Color Flasher</title> 
</head> 

<body> 

<script type="text/javascript"> 
    function color1() { 
     document.body.style.backgroundColor = 'red'; 
    } 

    function color2() { 
     document.body.style.backgroundColor = 'orange'; 
    } 

    function color3() { 
     document.body.style.backgroundColor = 'yellow'; 
    } 

    function color4() { 
     document.body.style.backgroundColor = 'green'; 
    } 

    function color5() { 
     document.body.style.backgroundColor = 'blue'; 
    } 

    function color6() { 
     document.body.style.backgroundColor = 'indigo'; 
    } 

    function color7() { 
     document.body.style.backgroundColor = 'black'; 
    } 

    function color8() { 
     document.body.style.backgroundColor = 'violet'; 
    } 

    color1(); 

    alert("ready for another color? - orange"); 
    color2(); 

    alert("ready for another color? - yellow"); 
    color3(); 

    alert("ready for another color? - green"); 
    color4(); 

    alert("ready for another color? - blue"); 
    color5(); 

    alert("ready for another color? - indigo"); 
    color6(); 

    alert("ready for another color? - black"); 
    color7(); 

    alert("ready for another color? - violet"); 
    color8(); 
</script> 

<center> 
<h1>Color Flasher<br></h1> 
</center> 
<hr> 
</body> 
</html> 

有人可以解释我在哪里得到的语法错误?

+0

每次都适用于我,但它看起来可能是文档未完全加载。将您的'