0

私たちはグーグルマップを使用しており、そのサイトへのトラフィックを最小限に抑えたいと考えています。現在、生成されたmaps.google.comURLへの<li>を含む要素があります。hrefそのリンクは、デバイスの向き(同じマップアドレス)に基づいて変更できますが、画面に適切に収まるようにサイズ変更されたマップを使用します。

縦向きと横向きのGoogleマップの<href>値を保存して、デバイスの向きが変わるたびにそれらが再生成されないようにします。次に、向きを変更するたびに、<li>次のようにjQueryを使用して'shtmlプロパティを反転します。

//on an orientation change...
if (window.orientation == "portrait") {
   $(#mapLi).html(portraitMapHref);
}
else {
   $(#mapLi).html(landscapeMapHref);
}

google APIは、ページの読み込み時にタグhrefsと埋め込みタグを生成し、最初に向きの変更が発生します。<img>もちろん、これはmaps.google.comへの接続につながります。

.htmlキャッシュされた関数を使用して前後にスワップするhrefsと、maps.google.comへの同時呼び出しがないように見えます。これは、私たちが求めているものですが、これはブラウザーのキャッシュによるものなのか、それとも性質によるものなのか疑問に思いました。.htmljqmの関数の?その要素のhtml値を交換すると、maps.google.comアドレスへの呼び出しがトリガーされると思いました。そうすべきではないのでしょうか、それともブラウザのキャッシュで幸運に恵まれているのでしょうか。

4

1 に答える 1

1

PortraitMapHrefとlandscapeMapHrefに正確に何を格納するかは明確ではありませんが、ノードを格納していると思います。

この場合、を使用する$.html()と、新しいコンテンツが現在のコンテンツに置き換わりますが、古いコンテンツ(ノード)は削除されず、DOMに接続されているかどうかに関係なく、ノードのままです。

置き換えられたノードを再利用するときにロードするものはありません。

于 2012-10-27T00:22:50.703 に答える