用PhoneGap调用异步AJAX时UI冻结

时间:2012-08-31 08:50:10

标签: android iphone ajax cordova asynchronous

我正在开发一个PhoneGap应用程序,它在我的计算机浏览器和iOS模拟器中运行良好,但在设备(iPhone和Android)上调用异步AJAX时,用户界面正在冻结。

例如,我正在使用动画GIF图像向我的用户显示内容正在加载,我已完成10个同时调用,但UI正在等待10个调用完成,然后才更改屏幕内容。问题是甚至没有加载动画。

这是我的ajax电话:

GetContribution: function(me, id) {

$.ajax({ 
    cache: false, 
    async: true, 
    type: "GET", 
    dataType: "json",
    url: AN_URL,
    data: 'id='+id+'&type=0',
    contentType: "application/json;charset=utf-8",
    accept: "application/json", 
    beforeSend: configureHeader,
    success: function (data) {
        me.set(data.GetContributionResult);
    me.setPZLoaded(true);
        me.grabContributions();
        me.trigger('change');
    },
    error: function (r) {
        console.log(r);
    }
});

},

PhoneGap上的异步调用有什么特别之处吗?

感谢您的帮助。

西里尔

1 个答案:

答案 0 :(得分:0)

因此ajax调用没有问题。问题只出在ajax调用的加载器上。为此,ajax加载器有一个jquery库。试试吧。它会解决你的问题。 浏览此链接,

http://jquery.malsup.com/block/