我正在使用$ .ajax()來填充我的移動web應用程序中的列表。我想要做的是在調用正在執行時出現jQuery移動加載微調器,並在列表填充後消失。當前版本的JQM分別使用$.mobile.showPageLoadingMsg()
和$.mobile.hidePageLoadingMsg()
來顯示和隱藏加載微調器。我無法弄清楚在哪裏放置這些語句以獲得正確的結果。這看起來應該是一件相當簡單的事情,我只是無法找到任何有關這種確切情況的信息。顯示頁面加載Ajax調用jQuery Mobile中的調整器
這裏的pagecreate函數內部的Ajax調用:
$('#main').live('pagecreate', function(event) {
$.ajax({
url: //url
dataType: 'json',
headers: //headers
success: function(data) {
for(i = 0; i < data.length; i++) {
$('#courses').append('<li>' + data[i].name + '<ul id="course' + data[i].id + '"></ul>' + '<span class="ui-li-count">' + data[i].evaluatedUserIds.length + '</span></li>');
$('#course' + data[i].id).listview();
for(j = 0; j < data[i].evaluatedUserIds.length; j++) {
$('#course' + data[i].id).append('<li><a href="">' + data[i].evaluatedUserIds[j] + '</a></li>');
}
$('#course' + data[i].id).listview('refresh');
}
$('#courses').listview('refresh');
}
});
});
您對從pagecreate事件中移動節目正確無誤,因爲在此事件發生後,JQM自頁面加載完成後調用hidePageLoadingMsg(並且這會覆蓋您的呼叫) – talkol