我正在尝试使用Javascript对小游戏进行一些测试。我想让它按下“X”秒超时。我做了这个,但它不会在剩下的时间内更新。
使用Javascript:
function cd(button, x) {
var ms = x * 1000; //Change the seconds to Milliseconds
var oldValue = button.innerHTML;
button.setAttribute('disabled', true);
button.innerHTML = oldValue + " [" + x + "]";
setTimeout(function(){
button.innerHTML = oldValue;
button.removeAttribute('disabled');
}, ms);
}
功能调用:
cd(document.getElementById("click"), 5);
HTML:
<button type="button" id="click" onclick="cd(this)">Get a banana</button>
我尝试将两者结合起来,以便每隔一秒用setInterval更新“x”秒,但它不起作用。
答案 0 :(得分:1)
我使用setInterval
答案 1 :(得分:1)
这是你在找什么?
JAVASCRIPT:
// store the oldValue here
var oldValue = null;
function cd(button, x) {
var ms = x * 1000;
// if you dont do this, you will get "Get a banana [5] [4] etc..."
if(!oldValue){
oldValue = button.innerHTML;
}
button.setAttribute('disabled', true);
button.innerHTML = oldValue + " [" + x + "]";
setTimeout(function(){
// decrease x
x--;
if(x > 0){
cd(button, x);
}else{
// remove attribute
button.removeAttribute('disabled');
// change back to oldValue
button.innerHTML = oldValue;
//reset oldValue
oldValue = null;
}
}, 1000);
}