黑马程序员技术交流社区

标题: 为什么不能调用getElementById得到body [打印本页]

作者: 忘忧草    时间: 2012-5-2 19:02
标题: 为什么不能调用getElementById得到body
本帖最后由 忘忧草 于 2012-5-2 19:05 编辑

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>无标题页</title>
    <style type="text/css">
        .day
        {
            background-color:White;
        }
        .night
        {
            background-color:Black;
        }
    </style>
    <script type="text/javascript">
        function switchLight(){//注意(1)“{”的写法,(2)定义function第一个单词首字母小写
            var btnSwitch = document.getElementById("btnSwitch");
//            //为什么不能调用getElementById得到body
//            if(document.getElementById("bodyTest").className=="day"){
//                document.getElementById("bodyTest").className="night";
//                btnSwitch.value="开灯";
//            }
//            else{
//                document.getElementById("bodyTest").className="day";
//                btnSwitch.value="关灯";
            if(document.body.className=="day"){//记住body在document下
                document.body.className="night";
                btnSwitch.value="开灯";
            }
            else{
                document.body.className="day";
                btnSwitch.value="关灯";
            }
        }
    </script>
</head>
<body id="bodyTest" class="day">
<!--动态修改value的值-->
<input type="button" id="btnSwitch" value="关灯" />
</body>
</html>

加注释的是我的方法,但是行不通,请教各位
作者: 黑马李亮    时间: 2012-5-2 19:47
再加一句
window.onload = function(){ switchLight();}
在页面加载完成后调用switchLight()
作者: 胡博    时间: 2012-5-3 07:12
你上面的代码没有触发switchLight()这个方法的代码。可以再按钮后添加属性onclick="switchLight()"。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2