草庐IT

settimeouts

全部标签

javascript - XHR/setTimeout/Promise 在 Chrome 中停止滚动之前不会完成

在Chrome中,如果用户正在滚动所有XHR,setTimeouts将被延迟,直到滚动停止,我需要一个解决方法来解决这个问题。thisblogpost中描述了该行为.尽管此功能有助于移动滚动,但对于无限滚动来说却是灾难性的,这正是我正在尝试做的。这正在发生的证据:所有其他浏览器工作正常,Chrome显示空白屏幕,直到用户停止滚动。网络面板会将所有请求显示为pending,直到滚动结束,然后它们立即全部完成。将它放在一个片段中,运行它然后立即开始滚动。直到滚动完成后才会调用setTimeout。varp=newPromise(function(resolve){setTimeout(fu

javascript - 为什么我的函数调用应该由 setTimeout 调度立即执行?

这个问题在这里已经有了答案:WhyisthemethodexecutedimmediatelywhenIusesetTimeout?(8个答案)CallingfunctionswithsetTimeout()(6个答案)关闭7年前。这是我的问题。我有这个功能来测试代理服务器。functioncrawl(){varoldstatus=document.getElementById('status').innerHTML;document.getElementById('status').innerHTML=oldstatus+"CrawlerStarted...";varurl=docu

javascript - 是否可以在 JavaScript 中链接 setTimeout 函数?

是否可以链接setTimout函数以确保它们依次运行? 最佳答案 这里列出了三种不同的方法:手动嵌套setTimeout()回调。使用可链接的计时器对象。将setTimeout()包装在promise和链式promise中。手动嵌套setTimeout回调当然。当第一个触发时,只需设置下一个。setTimeout(function(){//dosomethingsetTimeout(function(){//dosecondthing},1000);},1000);可链式计时器对象你也可以让自己成为一个小的实用对象,它可以让你真正地

javascript - JavaScript Window 对象的 setTimeout() 方法中的默认超时是什么?

根据W3Schools超时是必需的参数。但是可以在没有超时参数的情况下调用它。functioneventHandler(e){vart=setTimeout(function(){clearTimeout(t);alert('Called');});} 最佳答案 HTML5Timerspec说:5)Lettimeoutbethesecondmethodargument,orzeroiftheargumentwasomitted. 关于javascript-JavaScriptWindow

javascript - setTimeout和匿名函数问题

这是我的代码,调用SetOpacity时使用了错误的值,为什么?functionSetOpacity(eID,opacity){eID.style.opacity=opacity/100;eID.style.filter='alpha(opacity='+opacity+')';}functionfade(eID,startOpacity,endOpacity){vartimer=0;if(startOpacity 最佳答案 这应该有效:for(vari=startOpacity;i工作原理如下:在循环中创建一个匿名函数(funct

javascript - react 。 this.setState 不是 setTimeout 中的函数

这个问题在这里已经有了答案:Howtoaccessthecorrect`this`insideacallback(13个答案)关闭5年前。当前组件的state.breaker值为false。当滚动事件被捕获时,它会查看state,如果它的false它会做一些事情。我希望在Action再次发生之前有某种静态延迟,这就是为什么在goTo函数中将state.breaker设置为true并将在接下来的2s中阻止当前方法的进一步逻辑,直到setTimeout返回到false。但目前UncaughtTypeError:this.setStateisnotafunction当setState在设置超

javascript - setTimeout 回调参数

让我们考虑这段JavaScript:functionPerson(name){this.name=name;}Person.prototype.showName=function(){alert(this.name);}varmike=newPerson("mike");//mike.showName();window.name="window";我不明白的行为之间的区别setTimeout(mike.showName(),5000);和setTimeout(function(){mike.showName();},5000);为什么行为不同?这真的让我很困惑。谢谢。

javascript - 如何显示由 setTimeout/setInterval 生成的每个正在运行的线程的列表

我想通过纯javascript或浏览器中的任何类型的控制台或其他任何方式来执行此操作。这可能吗?谢谢进一步说明:我想调试一个做动画的库。我想知道如果有多个动画对象,是否会创建多个计时器。 最佳答案 请注意,setTimeout()不会生成新线程。浏览器端脚本不仅是单线程的,而且JavaScript评估与页面呈现共享同一个单线程(WebWorkers分开)。进一步阅读:HowJavaScriptTimersWork通过约翰·雷西格您可能想自己构建一个计时器管理器:vartimerManager=(function(){vartimer

javascript - 带有字符串或(匿名)函数引用的 setTimeout()?快速的

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭2年前。Improvethisquestion这两种方式中哪一种更快,为什么?window.setTimeout("func()",100);或者window.setTimeout(function(){func();},100);我猜如果除了JohnResig和所有忍者都使用它之外没有其他原因的话,第二种方式会更快,我猜是因为它已经被解析了,而不是第一种方式,它必须创建一个新的解析“thingie”。我依稀记得这是人们不喜欢eval

Javascript:在 settimeout 之前调用 cleartimeout 可以吗?

我有一个设置计时器的函数,并在计时器到期时自行回调。我想知道的是,在函数顶部清除计时器是否是一种不好的做法。这样做的原因是因为我会时不时地异步调用那个函数,如果我不先清除计时器,我就会有两个同时运行。我意识到我可以在对函数进行其他调用之前立即清除计时器,但我想知道如果我只是将cleartimeout调用保留在包含计时器的函数中,它是否会在任何浏览器中引起问题。另一个想法-我可以在调用cleartimeout之前测试计时器变量,看看它是否是一个计时器吗?下面是一些示例代码:functiononAir(){//resettimerclearTimeout(timer);$.getJSON(