var main = $('#main_content');
main.append("<img id=\"throbber\" src='/pre_config/css/images/throbber.gif' alt='Loading. Please wait.' />");
sleep(3000);
$("#main_content").load("/pre_config/function.php?type="+type+"piz&count=1", successCallback );
我想在这里睡3秒
sleep is not defined
[Break on this error] sleep(3000);
func2
答案 0 :(得分:21)
使用javascript setTimeout()
。
setTimeout(function() {
$("#main_content").load("/pre_config/function.php?type="+type+"piz&count=1", successCallback );
}, 3000);
修改强>
要使用.delay()
,您需要将延迟代码添加到动画队列中。
$("#main_content")
.delay(3000)
.queue(function( n ) {
$(this).load("/pre_config/function.php?type="+type+"piz&count=1", successCallback )
.dequeue();
});
答案 1 :(得分:11)
请记住,JavaScript不仅是单线程的,而且它与页面呈现共享相同的线程。因此,JavaScript中没有内置的阻塞函数,因为这会使页面UI无响应。
您应该考虑使用setTimeout()
,setInterval()
或jQuery的delay()
来使用计时器。查看@patrick's answer以获取几个示例。