我会失去我的头发 我已经构建了一个在IOS和Android上运行良好但在所有ajax调用都失败的简单应用程序 我尝试了很多mojo jojo技巧,不同版本的cordova但没有任何帮助
我的代码看起来像
$("#twitter").live('pageshow', function() {
// Empty the list of recorded tracks
$("#tweets_list").empty();
var tmpTweet = "";
//regex for urls
var output = $("#tweets_list");
$.ajax({
url: "http://twitter.com/status/user_timeline/mysecretathens.json?count=20&_nocache=" + cacheBuster,
jsonp: 'jsoncallback',
timeout: 5000,
beforeSend: function() {
$('#loader').show();
},
complete: function() {
$('#loader').hide();
},
success: function(data, status) {
$.each(data, function(i, item) {
var tmpTweet = item.text;
//replace links
tmpTweet = item.text.replace(/(http:\/\/\S+)/g, "<a href='$1'>$1</a>");
var singleTweet = "<li class='twitter-feed'>" + item.text + "</li>";
output.append(singleTweet).listview('refresh');
});
},
error: function() {
output.text('There was an error loading the data.');
}
});
$("#tweets_list").listview('refresh');
});
我已经放置了S.support.cors = true; 和$ .mobile.allowCrossDomainPages = true,还尝试了其他一些技巧
唯一有效的方法是西蒙的 [link] 但我想使用我的原始代码,我目前正在使用Cordova 2.0.0 和视频工作室的Windows Phone sdk 7.1
答案 0 :(得分:0)
几个问题:
您是否确认了您从AJAX电话中获得的错误? (例如,检查与Fiddler的回应)
您确认JqueryMobile mobileinit事件正在解雇吗?一个简单的console.log就足够了。您指定脚本标记的顺序是非常重要。看这篇文章。 How to bind "mobileinit" event in jQuery Mobile?