document.body.style.backgroundColor的语法是什么?

时间:2011-08-03 19:47:46

标签: javascript

我是一名JavaScript新手。我有以下代码,它表现得非常奇怪。 假设要做的事情是将背景颜色设置为红色,然后在清除警报对话框后循环显示一系列背景颜色。颜色名称当前是字符串格式,但如果我使用十六进制ID,则会产生相同的行为。

通常,当页面加载时,它会开始按照预期的颜色对身体进行着色。第一个警报清除有时会将背景更改为橙色,有时不会,然后没有更改,因为下一个对话(黄色,绿色,蓝色,靛蓝,黑色)被清除,直到最后一次颜色更改,有时需要,有时不会。

<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>

有人可以解释我的语法错误吗?

1 个答案:

答案 0 :(得分:0)

您应该尝试将<script>放在<head>中,或者如果您真的想要将您的脚本放在正文标记中,则应该放在结束</body>标记之前。

仅供参考,我的工作正常。在JSFiddle上测试,它们会自动将<script>放在body标签中。