6

単一ページ テンプレートで jQuery モバイルを使用しています (各ページは個別の html ファイルです)。Ajax 経由でコンテンツをロードするページをプリフェッチしたいと考えています。最初のページの Document.ready() 関数にプリフェッチ コードを配置しました。

$.mobile.loadPage("my-projects.html", { showLoadMsg: false });

プリフェッチしたい2ページ目の Document.ready() 関数内でのajax呼び出し。そのページを preftech すると、この ajax 呼び出しは発生しません。これを達成する方法はありますか。助けてください

4

1 に答える 1

1

jQuery Mobile にはプリフェッチ機能が組み込まれているdata-prefetchため、リモート ページにリンクするリンクに属性を追加するだけです。

<a href="prefetchThisPage.html" data-prefetch> ... </a>

ソース: http://jquerymobile.com/demos/1.1.0/docs/pages/page-cache.html

一般的に、AJAX 経由でページをプルインすると、document.ready関数は起動しません。ただし、 などの jQuery Mobile Page イベントは使用できますpageinit。例えば:

$(document).delegate('#my-page-id', 'pageinit', function () {
    $.mobile.loadPage("my-projects.html", { showLoadMsg: false });
});
于 2012-06-15T15:58:36.407 に答える