OnClick 将用户重定向到另一个 url

OnClick redirect the user to another url

我想按以下顺序更改背景颜色:[黑、白、红、绿、蓝]

<body style="background-color:black">

    <script type="text/javascript">
        function test() {
            var bg = document.bgColor;
            var e = document.getElementById("tests");

            if (bg == "black")  {e.style.backgroundColor = "white";}
            else if (bg == "white") {e.style.backgroundColor = "red";}
            else if (bg == "red") {e.style.backgroundColor = "green";}
            else if (bg == "green") {e.style.backgroundColor = "blue";}
            else if (bg == "blue") {"<a href="/testson"/>";}
                        }

    </script>
    <div class="test"; onclick="test()"></div>
</body>

但是当我点击页面上的某处时,没有任何反应。

你必须这样做

 // similar behavior as clicking on a link
window.location.href = "http://whosebug.com";

从 html

中删除 ;
 <div class="test" onclick="test()">Click me!!</div>

您的代码不起作用的原因是 div 标签不支持操作 onclick。为了使 div 可点击,您需要为 div 设置一个 ID,然后在 javascript 中分配一个事件处理程序来处理点击,例如:

<head>
    <script type="text/javascript">
        function test() {
            var bg = document.bgColor;
            var e = document.getElementById("tests");

            if (bg == "black")  {
                e.style.backgroundColor = "white";
            }
            else if (bg == "white") {
                e.style.backgroundColor = "red";
            }
            else if (bg == "red") {
                e.style.backgroundColor = "green";
            }
            else if (bg == "green") {
                e.style.backgroundColor = "blue";
            }
            else if (bg == "blue") {
                "<a href="/testson"/>";
            }
        }
        function AddHandlers(){
            var something = document.getElementById('someid');

            something.style.cursor = 'pointer';
            something.onclick = function() {
                 test();
            };
        }
    </script>
</head>

<body onload="AddHandlers()">
    <div class="test" id="someid">Click me!!</div>
</body>