Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.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在指定时间之后才允许函数_Javascript_Jquery_Html - Fatal编程技术网

JavaScript在指定时间之后才允许函数

JavaScript在指定时间之后才允许函数,javascript,jquery,html,Javascript,Jquery,Html,在一个网站上工作,它有一个JS函数,当鼠标移动时会进行更新——我不希望它在指定的时间内做任何事情,例如,就好像整个代码块被注释掉直到5秒 浏览堆栈溢出后,我得出结论,解决方案可能涉及setTimeOut,但我已经尝试过了,它没有效果,在浏览器控制台中也没有错误。我尝试的函数是函数updateevent: 最后一个导致它破裂 未捕获的语法错误:意外标记 任何帮助都将不胜感激, Jarrod函数MyFunction将在5秒前被禁用: var canStart = 1; function MyFun

在一个网站上工作,它有一个JS函数,当鼠标移动时会进行更新——我不希望它在指定的时间内做任何事情,例如,就好像整个代码块被注释掉直到5秒

浏览堆栈溢出后,我得出结论,解决方案可能涉及setTimeOut,但我已经尝试过了,它没有效果,在浏览器控制台中也没有错误。我尝试的函数是函数updateevent:

最后一个导致它破裂

未捕获的语法错误:意外标记

任何帮助都将不胜感激,
Jarrod

函数MyFunction将在5秒前被禁用:

var canStart = 1;

function MyFunction() {
    if(!canStart){
        return false;
    }
    //YourFunction
    canStart = 0;
    setTimeout(function(){
        canStart = 1;
    }, 5000);
}
该方法不是setTimeOutfunctionName,timeout。 它是setTimeoutfunctionName,timeout

你所做的是错误的:

setTimeoutupdate,5000; setTimeoutupdateevent,5000; setTimeoutfunction updateevent,5000

您的代码所做的是:

setTimeout(update, 5000);
它在setTimeout调用5秒后运行函数update

它使用parameters事件调用update方法。然而,这个更新方法必须返回一个函数,这是我们不想要的

setTimeout(function update(event), 5000);
这是完全错误的。您可能需要:

setTimeout(function(event) {
  //Do whatever you want here.
}, 5000, event);
还有,最后一种方法:

function() {

}

这就是所谓的匿名函数。

您确定控制台中没有错误吗?没有什么像“setTimeOut”这样的未定义?啊,等等,没有-你是对的-setTimeOut未定义是因为我刚刚修复了一个错误,所以你想在加载页面5秒后,在mousemove上“不允许”更新功能吗?这是你的问题吗?是的,这就是问题所在。所以5秒后,解除鼠标移动事件的绑定。现在,如何绑定mousemove事件?发布有问题的相关代码本身。您可以覆盖update方法而不执行任何操作,但更好的方法是取消绑定mousemove事件
setTimeout(function(event) {
  //Do whatever you want here.
}, 5000, event);
function() {

}