1

jquery モバイルを利用したサイトの内部リンクのいずれかをクリックすると、スピナーが表示され、AJAX 経由でページを読み込もうとします。代わりに、完全なリロードで各ページをロードしたいと思います。この属性をすべてのリンクに追加することで、これを実現できます。

data-ajax="false"

しかし、私はたくさんのリンクを持っているので、これらを手動で追加して HTML を混乱させたくありません。JS で 1 か所で定義して、サイト全体のすべてのリンクに影響を与える方法はありますか?

私はこれを試しましたが、運がありません:

$(document).bind("mobileinit", function(){
    $.extend($.mobile, {
        defaultTransition: 'none',
        ajaxEnabled: false,
        ajaxLinksEnabled: false
    });
});
4

2 に答える 2

3

data-ajax="false" を含む div に追加して、すべてのリンクに影響を与えることができます。構成で ignoreContentEnabled を true に設定する必要があります。これは、ページ全体を含む div がある場合に便利です。

ドキュメントhttp://jquerymobile.com/demos/1.2.0/docs/pages/page-links.htmlを参照してください

「バージョン 1.1 では、親コンテナーで data-ajax="false" を使用するためのサポートを追加しました。これにより、Ajax ナビゲーション システムから多数のリンクを除外できます。これにより、すべてのリンクにこの属性を追加する必要がなくなります。この機能を有効にするには、$.mobile.ignoreContentEnabled を true に設定する必要があります。このオプションを使用および設定する前に、デフォルトの設定を確認してください。"

また、Ajax リンクを許可しないようにデフォルトを設定することもできます。その情報はhttp://jquerymobile.com/demos/1.2.0/docs/api/globalconfig.html ajaxEnabled を参照してください。

于 2012-11-19T20:10:44.790 に答える
1

のようなものを入れることができます$('a').attr('data-ajax', 'false');

于 2012-10-12T15:26:34.003 に答える