我有以下JS代码
$(document).ready(function(){
update_items();
adjust_size_of_menu();
});
var adjust_size_of_menu = function() {
// global boolean set in update_items_count();
if ( !items_updated )
{
alert("Treatment of update_items() not done yet");
setTimeOut( function(){ adjust_size_of_menu(); }, 1000);
}
// More treatment goes here
}
如您所见,我在第一个函数中设置了一个变量。在继续执行第二个函数中的其余指令之前,此变量必须为true
。
这里的问题是,我第一次进入adjust_size_of_menu()
,它会向我显示警报,这很好。之后,它应等待1秒钟,然后从头开始重新执行adjust_size_of_menu()
,直到item_updated布尔值为true
,然后我们继续执行其余代码。
此代码有什么问题?我已经在其他地方使用过相同的方法并且工作得很好。
答案 0 :(得分:2)
setTimeOut
不是javascript中的内置函数。如果您在其他地方使用它,那是因为您或其他人声明了它。正确的拼写是setTimeout
。请注意小写“o”。
https://developer.mozilla.org/en-US/docs/Web/API/WindowTimers/setTimeout