-2

我希望 javascript 执行多次,但它只执行一次。下面的代码工作得很好,但是在单击两个按钮后,我必须刷新页面才能使其再次工作。请帮我解决这个问题。只想多次执行它,但不刷新页面。

HTML:

<body> 
    <h1 class="head" id="h" onclick="change()">TEST PAGE</h1> 
        <form name="myform"> 
            <input name="horizontal" type="button" class="button1" value="Swap Horizontal" id="SH1" onclick="swaphorizontal()"> 
        </form> 
        <form name="myform1"> 
            <input name="vertical" type="button" class="button2" value="Swap Vertical" id="SV1" onclick="swapvertical()"> 
        </form> 
        <h2 class="mybox"></h2> 
        <h2 class="line1"></h2> 
        <h2 class="line2"></h2> 
        <h2 class="voidbutton1"></h2> 
        <h2 class="voidbutton2"></h2> 
</body>

JS:

<script>

    function swapvertical() {

        document.getElementById("SV1").style.top = "210px";

        document.getElementById("SH1").style.top = "414px";

    }
    function swaphorizontal() {

        document.getElementById("SV1").style.left = "386px";

        document.getElementById("SH1").style.left = "178px";

    }
</script>
4

1 回答 1

5

它可能不止一次起作用。问题是您在 JavaScript 中所做的只是将值更改为静态值。

例如,在 中ogposition(),你调用document.getElementById("SH1").style.position = "absolute";下一次调用 时ogposition(),SH1 的位置已经是绝对的,所以再做一次不会改变任何东西,你也不会注意到有什么不同。

如果您想知道您的代码是否只执行了一次或多次,请尝试console.log();在代码的可疑部分中添加一条语句。

于 2013-09-13T16:41:14.360 回答