我正在尝试使用jquery/javascript做以下操作,但我很难找到有关如何完成它的任何信息。
我想创建一个函数,当调用时,将等待2秒的响应从用户(一个按键为例)。如果在2秒内收集到响应,则执行事件a;如果在2秒内没有按下键,则执行事件B。
function waitForInput
{
if(response within 2 second timeout?) event a executed
else if (timed out) event b executed
}
试试这样
var timeOut;
$('#input').on('keyup', function () {
if (timeOut) {
clearTimeout(timeOut);
$('#div').removeClass('a'); // corresponds to Event A
}
timeOut = setTimeout(function () {
$('#div').addClass('a'); // corresponds to Event B
},1000);
console.log(timeOut)
});
检查小提琴
使用setTimeout来处理:
setTimeout(2000, function decide () {
if (keyPressed)
{
//do A
} else
{
// do B
}
}