我目前正在jQuery中尝试异步函数调用,并且卡住了。请看下面的例子:Javascript:使用jQuery的异步函数调用
<html>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
</head>
<body>
<script type="text/javascript">
f = function() {
alert("f1");
var x = 0;
for (var i = 0; i < 2500000000; i++) {
x++;
}
alert("f2");
}
$.when(f()).done(alert("done"));
alert("moving on...");
</script>
</body>
</html>
我希望按以下顺序警报的消息:“F1”,“继续前进......”,“F2”,“完成” 但是当我运行的代码在Chrome中,我得到的是:“f1”,10秒内没有任何反应,“f2”,“完成”,“继续......”。这与我看起来不同步。我做错了什么或者这是预期的行为?如果是这样,使用when函数和回调函数的重点是什么?我不能同时调用函数f吗?
http://api.jquery.com/jQuery.when/ – SLaks