0

jQuery Mobile をモバイル フレームワークとして使用しています。jQuery を使用して、ページにカスタム コンテンツを動的に入力します。jQuery Mobile は、ページの読み込み後に作成された要素にスタイルを適用しません。そのため、私は使用しています

$('[data-role=content]').trigger('create');

そのため、新しいコンテンツが作成された後、jQuery Mobile はページのスタイルを再評価します。

また、SammyJs を使用してルートをロードし、動的コンテンツの作成を処理します。trigger(create)JSON リクエストをインラインにすると、コードが機能しないことがわかりました。ただし、コンソールからコードを実行すると (JSON リクエストとトリガーの間に時間が追加されます)、jQuery はスタイリングを正しく適用します...

私の回避策は使用することsetTimeoutです:

setTimeout(function() {
    $('[data-role=content]').trigger('create');
  }, 100);

ただし、コンテンツが数ミリ秒間スタイルされていないように見え (ユーザーが見ることができます)、正しいスタイルで更新されるため、これが最善の解決策だとは思いません...

jQuery mobile または Sammy で DOM の変更を監視する方法はありますか?

4

0 に答える 0