Javascript 如何获取setTimeout以从输入读取值? 倒计时
Javascript 如何获取setTimeout以从输入读取值? 倒计时,javascript,Javascript,var t=document.getElementById('number').value; 函数倒计时(){ setTimeout(函数(){alert(“hi!”;},t); } 我想要setTimeout获取变量t。变量t将获得input标记中的任何4位数字&当您按下按钮时,它将开始减法。但是,当我尝试按下按钮时,它不会这样做。 代码有问题吗?或者,不是这样做的吗?主要问题:调用函数时,需要读取函数内部的输入值: var t = document.getElementById('nu
var t=document.getElementById('number').value;
函数倒计时(){
setTimeout(函数(){alert(“hi!”;},t);
}
我想要setTimeout
获取变量t
。变量t
将获得input
标记中的任何4位数字&当您按下按钮时,它将开始减法。但是,当我尝试按下按钮时,它不会这样做。
代码有问题吗?或者,不是这样做的吗?主要问题:调用函数时,需要读取函数内部的输入值:
var t = document.getElementById('number').value;
function countdown() {
setTimeout(function(){alert("hi!");}, t);
}
</script>
变量t
在页面加载时初始化,并且在输入值更改时不会自动更新。从输入中读取新值是您的责任
还有一件事(这可能只是一个输入错误),但是是的,属性应该是
onclick
如果您的按钮中出现了输入错误,那么应该是倒计时
您有两个错误,首先将onlick
更改为onclick
,并将t
变量添加到函数countdown
,因为您需要在单击后获取值,但在您的示例中,变量将为空
function countdown() {
var t = document.getElementById('number').value;
setTimeout(function(){alert("hi!");}, t);
}
您也可以清除超时,以便在单击后启动新的计时器,如下所示
function countdown() {
var t = document.getElementById('number').value;
setTimeout(function(){alert("hi!");}, t);
}
定义超时指针
var timer;
function countdown() {
var t = document.getElementById('number').value;
clearTimeout(timer);
timer = setTimeout(function(){alert("hi!");}, t);
}
重置先前调用但未完成倒计时(超时)
创建新超时
if(window.hTimeOut!=null) clearTimeout(window.hTimeOut);
完成后重置超时指针
window.hTimeOut = setTimeout(function(){
alert("hi!");
并将新的时间价值传递给它
window.hTimeOut!=null;
“它将开始减法”什么将开始减法?
input
标记的值是多少。无论input标记中的值是什么,除了一段代码外,还包括一些对您所做更改的解释通常是有帮助的。@JamesMontagne:added=)
window.hTimeOut = setTimeout(function(){
alert("hi!");
window.hTimeOut!=null;
}, document.getElementById('number').value);
}