-1

document.getElementById("id").style.color何らかの理由で、明らかに「null」であるため、の変数を設定できません。document.getElementById("id").style.color色を設定する必要があるたびに呼び出す必要があるのはなぜですか?

(電球の写真がなかったので即興で作ってみました)

<html>
<head>
    <title>Hello</title>
</head>
<body>
    <pre id="light" onclick="toggleLight()">
      ____
    / __   \
   / //     \
  / ||       \
 |            |
 |     |O     |
  \    O|    /
   \   ||   /
    \      /
     |~~~~|
     |____|
       **
    </pre>
    <script>
        var on = false;
        var bulb = document.getElementById("light").style.color;
        function toggleLight(){
            if(on==true){
                bulb = "black";
                on=false
            } else if(on==false) {
                bulb = "yellow";
                on=true
            }
        }
    </script>
</body>

編集:これは明確ではなかったようです。コードを編集したので、試してみてください。あなたは私が何を意味するか知っているでしょう。

4

3 に答える 3

3

色を変数に保存してから変更できない理由は、変数のみを変更するためです。

ただし、これを行うことができます:

var elem=document. getElementById("light");

そしてどこでも:

elem.style.color = "somecolor";

ところで、電球が大好きでした。

于 2013-10-28T22:45:01.893 に答える