これが私がやりたいことです:
- Ajax を使用してバスケットをロードする
- 「待機」メッセージを表示
- ロードしたら、バスケットをリフレッシュします。
関数を使用しようとするとpageinit
:
$(document).bind('pageinit', function(evt) {
console.log(evt);
}
コンソール ログは、29 回呼び出されたことを示しています。
すべてが 1 つの HTML ページにあり、$.mobile.changePage()
ページを変更するために使用しています。だから私はこのハックを試しました:
$(document).bind('pagebeforeshow', function(evt, pg) {
if (pg.prevPage.length==0) {
/* first page = code executed once */
var pg = $('#page-basket'),
footer = pg.children( ":jqmData(role=footer)" );
footer.hide().trigger('updatelayout');
AjaxGetBasket( function(data) { console.log('ajax basket ok'); });
}
});
ただし、レイアウトは更新されません。
ページを最初に一度だけ変更するにはどうすればよいですか?