Javascript if语句设置条件的时间
我有一个if语句,条件是如果numberOfFingers==5,那么计数器将增加1,我希望计数器只在numberOfFingers的持续时间为5秒时增加1。(这是跳跃运动)这可能吗Javascript if语句设置条件的时间,javascript,Javascript,我有一个if语句,条件是如果numberOfFingers==5,那么计数器将增加1,我希望计数器只在numberOfFingers的持续时间为5秒时增加1。(这是跳跃运动)这可能吗 if (numberOfFingers == 5) { var start = parseInt(document.getElementById('count').innerHTML); var end = start+1; document.getEleme
if (numberOfFingers == 5) {
var start = parseInt(document.getElementById('count').innerHTML);
var end = start+1;
document.getElementById('count').innerHTML = end;
}
查看“设置超时”并尝试以下操作:
if(numberOfFingers == 5) {
setTimeout(function(){
if(numberOfFingers == 5){ //5 fingers still after 5s
var start = parseInt(document.getElementById('count').innerHTML);
var end = start+1;
document.getElementById('count').innerHTML = end;
}
}, 5*1000); //your 5s
}
嗯,什么?确切的持续时间是什么?你是说表达式(numberofigers==5)在5秒钟内保持为真吗?@lombausch是的,对不起,我的文章有点不清楚@阿德内奥为不清楚道歉。5秒,与用户将5个手指悬停在跳跃运动控制器上的持续时间相同。一旦他们将5个手指悬停5秒钟,我希望计数增加+1。我只是不确定如何设置时间条件。这会起作用,但也会捕捉到
numberOfFingers
在5秒内更改为其他数字,然后又更改回来的情况。一个完全正确的实现必须观察numberOfFingers
的变化,以确保在5秒内不会发生变化。我不知道这对于这个特定的实现是否重要。@lombausch感谢您的帮助,但这不是我想要的,我发现很难解释!如果用户numberOfFingers==5,我希望计数显示1,如果用户重复两次,我希望显示2,如果用户重复三次,我希望显示3,依此类推,我的问题是,当用户悬停5个手指时,跳跃动作的持续时间为1-5秒,这意味着连续执行计数,因此当用户以大约60的计数移除其左侧的所有手指时。我想知道有没有办法减少这个?再次感谢!我不理解这一部分:“当用户悬停在5个手指上时,他们的跳跃动作持续时间为1-5秒,这意味着计数将持续执行,因此当用户以大约60的计数移除其左侧的所有手指时”我不知道你在想什么@伦堡哈哈!呃,我在计数后增加1,然后在条件满足后停止。。计数继续增加,因为用户的手通常会在控制器上停留几秒钟。有没有办法在条件内设置时间?e、 g numberOfFingers==5,持续时间等于5秒,则代码将执行。。你有跳跃运动控制器吗?