我有
Myitem1.MyFunc();
Myitem2.MyFunc();
function MyFunc(){
if (okToUpdate){
//we weren't here from anywhere within the last 100 milliseconds
}
}
不幸的是,okToUpdate
变量不会立即更新,因此从上一次调用函数开始至少需要 100 毫秒才能获得正确的值。如何使 MyFunc 延迟执行?
我有
Myitem1.MyFunc();
Myitem2.MyFunc();
function MyFunc(){
if (okToUpdate){
//we weren't here from anywhere within the last 100 milliseconds
}
}
不幸的是,okToUpdate
变量不会立即更新,因此从上一次调用函数开始至少需要 100 毫秒才能获得正确的值。如何使 MyFunc 延迟执行?
setTimeout(function(){
Myitem1.MyFunc();
},100)
会成功的。如果你准确地解释你想要什么,我可以给你准确的时序代码。
此代码可以帮助您
var clrTime=null;
MyFunc(){
clrTime=setTimeout(function(){
if (okToUpdate){
// your code to do
}
},100);
}
使用回调或承诺将是干净的解决方案。不是通过超时实现的某种忙等待。
查看发布/订阅模式。
我会使用该setTimeout()
功能。像这样的东西:
<script>
function myFunction() {
setTimeout(function(){MyFunc()},100);
}
</script>
<body onload="myFunction()">
</body>