我创建了一个生成随机数的按钮,但是如果我多次单击它,则设置的间隔会加到现有间隔上,并且变得更快(我想!)有没有一种方法可以在不禁用按钮/更改ID的情况下停止它?有没有干净的方法?请帮忙!如果我不遵守论坛礼节,我们深表歉意;我是新来的!

HTML:
<button  type="button" class="button" id="button" onClick="randomnumber()">
Click to start </button>


JAVASCRIPT:
function randomnumber(){
var myVar = setInterval(function(){randomnumber1()}, 1000);
function randomnumber1(){
    var x = Math.floor((Math.random() * 99));
    document.getElementById("button").innerHTML = x;

    }

}


链接在这里:
http://codepen.io/anon/pen/bJkjC

最佳答案

只需在按下按钮后声明一个类似clicked的标志即可成为true

var clicked = false;
function randomnumber(){
    if (clicked) { return; }
    clicked = true;
    var myVar = setInterval(function(){randomnumber1()}, 1000);
    function randomnumber1(){
        var x = Math.floor((Math.random() * 99));
        document.getElementById("button").innerHTML = x;
    }
}


CODEPEN

07-24 09:44
查看更多