Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/480.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript if语句设置条件的时间_Javascript - Fatal编程技术网

Javascript if语句设置条件的时间

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,那么计数器将增加1,我希望计数器只在numberOfFingers的持续时间为5秒时增加1。(这是跳跃运动)这可能吗

    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秒,则代码将执行。。你有跳跃运动控制器吗?