3

jQuery Mobile のウィジェット (ボタン、ドロップダウン リストなど) を使用したいと考えています。

独自のメニューとリンクがある jQuery モバイルを使用せずに開発されたサイトを既に持っています。それに jQuery モバイル フレームワークを追加しようとすると、あらゆる種類の問題が発生します (CSS をオーバーライドし、ページをハイジャックしようとします)。トランジションなど)。

フレームワークの一部の機能を無効にすることはできますか?

これは質問に関連しています:未使用の jQuery Mobile 要素を削除しますか? -しかし、スクリプトサイズの最小化を扱います。特定の機能のみを無効にしたいので、アプリの残りの部分に干渉しません。

更新: jQuery Mobile を「そのまま」使用することによって引き起こされる問題の一部は、ajax を介してすべてのリンクをロードしようとするという事実に起因しています。を追加することで軽減できます。

rel="外部"
jQM は ajax 経由でリンクをロードしようとしません。

4

3 に答える 3

3

JQM 用のビルダーが間もなく登場します。2012 年 5 月 4 日現在、まだベータ版です。しばらくお待ちください。この機能はいつでも利用できるようになります。リリースされたら、この回答を更新しようとします。

ここでの更新は、JQM ビルダーhttp://jquerymobile.com/download-builder/へのリンクです。

于 2012-05-04T05:05:01.337 に答える
1

Adding the data-role="none" attribute to any form or button element tells the framework to not apply any enhanced styles or scripting

于 2012-10-25T03:23:57.943 に答える
1

必要なコンポーネントだけでパッケージを構築することは、最初に行うべきステップですが、それだけでは不十分な場合があります。

また、最近発見され、1 つのページで jQuery Mobile ペインの読み込みを停止するために使用されたコードもあります。これは、フレームワーク自体を使用せずに jQuery Mobile コンポーネントを個別に使用する場合に非常に便利です。つまり、通常のページ動作 (つまり、リンクをクリックしてページをリロードする) を維持し、いくつかの jQuery Mobile コンポーネントを使用する必要があります。

そして、これが Symfony 2 プロジェクトのトリックを行ったこのコードです:

(function($) {
  $(document).bind('mobileinit',function() {
    $.mobile.ajaxEnabled = false;
  });
})(jQuery);
于 2014-01-20T11:53:09.203 に答える