0

我正在将cordova phonegap 用于移动应用程序。使用设置超时功能,我在页面加载后通过 ajax 调用一些数据。但是,当我使用它时,应用程序在 ajax 数据传输期间的时间间隔内被挂起。之后一切都运行良好。怎么解决,有什么办法

window.setTimeout(function(){

                                  // $("#home").slideDown(1000);

                                  // $("#home").addClass('curr');

                                  $("#datepicker").datepicker({ minDate: +1, maxDate: "+12M" });
                                  var twitterBox = $("#twitterBox");
                                  $.getJSON("http://api.twitter.com/1/users/show.json?screen_name=santanu1122&callback=?", function(tweetdata) {
                                            twitterBox.append("<p id=\"twitterUser\" class=\"twick\"><a onclick=\"newWin(this.href);return false;\" href=\"http://twitter.com/"+tweetdata.screen_name+"\">@"+tweetdata.screen_name+"</a><br/>Followers: "+tweetdata.followers_count+" Tweets: "+tweetdata.statuses_count+"</p>\n");
                                            getTweets();
                                            });

                                  $.ajax({
                                         type: "POST",
                                         url: "http://XXXXXXXXXXXXXX/fetchnewsfeed.php",
                                         data:"",
                                         success: function(newsfeedbyadmindetails){
                                         $('#newsfeedbyadmin').html(newsfeedbyadmindetails);
                                         $('#example1').fbWall({ id:'santanu.ece',accessToken:'XXXXxxxxxxxxxxxxxxxxxx'});
                                         }
                                         }).bind();

                                  }, 5500);
4

1 回答 1

0

最好的方法是扩展这一切-不要一起加载,先加载facebook,然后在几秒钟后加载twitter等等......

如果结果太多,Tou 甚至可以从 twitter 中拆分结果。然后,您可以每隔几秒钟更新 20 个结果 - 只要确保页面不会在当前视图之外滚动太多,如果可能的话。

另一种方法是在您进行更新并在之后隐藏它时使用一条消息 - 例如“正在加载...”。

这实际上取决于您正在寻找的用户体验。

于 2012-09-13T14:09:15.720 回答