仅在完成执行后再次调用函数

时间:2015-10-03 01:38:06

标签: javascript jquery

每次按下回车键时都会调用一个函数。我需要这样做,这样如果再次按下回车键,IF,当函数尚未完成执行时,将不会调用该函数。只有当函数执行完毕后,如果再次按下回车键,它将再次被调用。我将如何在jQuery或JavaScript中执行此操作?

onKeyDown = 'if(event.keyCode==13) someFunction()'

function someFunction() {

//some codes
//some setTimeouts

}

1 个答案:

答案 0 :(得分:2)

完成后只需设置一个布尔值,然后在执行函数前进行检查。



onKeyDown = 'if(event.keyCode==13) { if (!finished){someFunction();}'
var finished = false;
function someFunction() {
   finished = false

   //some codes
   //some setTimeouts

  finished = true;
}




尽管正如Luis所指出的那样,Javascript是单线程的,所以除非我没有完全理解你的问题,否则你不应该遇到你描述的问题。