0

ロード時に正常に実行される JavaScript ファイルにリンクを作成しています。私が抱えている問題は、誰かがリンクをクリックすると、JQM が AJAX でそれをロードせず、新しいページにロードすることです。なぜこれが起こっているのかわかりません。

リンクの HTML は次のとおりです。

boxText.innerHTML = "<a href='../home-details/index.php?id=" + home_id + "' class='infowindow'>" + address + "<div class='infowindow-arrow'></div></a>";

ページの流れは次のとおりです: インデックス ページ -> ページが読み込まれたときにマーカーをレンダリングするマップ ページ。マーカーには、コンテンツとしてリンクを持つ情報ウィンドウがあります。これらは、マーカーの作成時にもロードされます。情報ウィンドウ リンクは、AJAX を使用して読み込まれません。

4

2 に答える 2

0

動的に作成されたリンクのみがフルリロードを実行していますか?

そうでない場合、jQMはAJAXを使用しています。おそらくpushstateメソッド(webkit、mozilla)をサポートするブラウザーを使用しているため、URLバーに新しいアドレスが表示されます。jQMは、AJAXがページをロードし、実際にページをロードせずにURLバーのアドレスを変更することです。

IE9でページを開くと、これを確認できます。まだpushstateをサポートしていないので、期待するハッシュタグURLを取得します。

この動作は、jQMオプションpushStateEnabledをに設定することで変更できますfalse

于 2012-06-13T21:37:50.510 に答える
0

インスペクターに表示されているものを投稿できますか?ドキュメントで説明されているように、jQuery はクラスなどを動的に適用します。

http://jquerymobile.com/demos/1.1.0/docs/pages/page-links.html

Ajax を使用しない リンク 他のドメインを指すリンク、または rel="external"、data-ajax="false" または target 属性を持つリンクは、Ajax で読み込まれません。代わりに、これらのリンクによってページ全体が更新され、遷移のアニメーションは表示されません。両方の属性 (rel="external" と data-ajax="false") は同じ効果がありますが、セマンティックな意味が異なります。別のサイトまたはドメインにリンクする場合は、rel="external" を使用し、data-ajax=" を使用する必要があります。 false" は、ドメイン内のページが Ajax 経由で読み込まれないように単純に選択する場合に便利です。セキュリティ上の制限により、フレームワークは常に Ajax の動作から外部ドメインへのリンクを選択します。

于 2012-06-13T21:12:13.330 に答える