为何脚本会先被执行$.getJSON外的程序,而不是$.getJSON内的?求解!

类似代码: functionMsg(){   $.getJSON(url,function(data){  &... 类似代码: function Msg(){    $.getJSON(url,function(data){    alert("来过!");  }); alert("飘过!");}运行页面最先弹出的提示消息是飘过,而不是来过.后来调试才发现原来脚本是先从下往上执行,但我搞不懂,按道理应该是从上往下执行的.最奇怪的问题是Firefox只执行Msg函数一次,而在IE8中测试时,多次执行了Msg函数里面的程序.求解啊!!!  展开
 我来答
等待放飞梦想
2012-02-08 · TA获得超过1175个赞
知道小有建树答主
回答量:1696
采纳率:16%
帮助的人:743万
展开全部
function Msg(){
$.getJSON(url,function(data){ //最先执行到这
alert("来过!");//getJSON取完后调用回调函数
});
alert("飘过!");//直接alert
}
过程是这样的。当取json的URL的时候需要一个过程。但飘过不会去等这个JSON。所以先弹出来了。当取完JSON后。触发回调函数。这是“来过”就弹出来了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式