2

編集:Mozillaはバグを修正しました。このスレッドは死んでいます。

編集:これはMozillaのバグです。このスレッドを参照してください:https ://bugzilla.mozilla.org/show_bug.cgi?id = 501853

ここに画像に使用するスプライトがあります:http://www.trailbehind.com/site_media/images/sprite.png

FireFox 3.5では、マップにアイコンをレンダリングするたびにスプライトがフェッチされるようです。このページを読み込んだり、マップをパンしたりすると、Firebug Net Panelで動作を確認できます:http://www.trailbehind。 com / node / 1148091 /

以前はInternetExplorerでこれと同様の問題が発生していましたが、最終的にはSafari 3/4、FF 2/3、およびIE6/7/8でこれが機能するようになりました。さて、FF3.5で何かがおかしいです:(

このコードをドキュメントのに入れて画像をprec-cacheしようとしましたが、役に立ちませんでした。

  var pre = new Image();
  pre.src = "/site_media/images/sprite.png"; 

後でマップマーカーを作成する(そしてスプライト画像を再度フェッチする)コードは次のとおりです。それはGMapsに関連している可能性があります-左側に各アイコンや他の画像を描画するためのスプライトをフェッチしていないようです...マップだけです。

//returns an image-like GIcon based on a sprite  
function getGIconSprite(attr) {
  var myicon = new GIcon(G_DEFAULT_ICON);
  myicon.sprite = {image:"/site_media/images/sprite.png", top:0};
  myicon.iconSize = new GSize(16,16);
  myicon.iconAnchor = new GPoint(8,8);
  myicon.shadow = null;
  myicon.sprite.left = attr.offset*16;
  return myicon;
}
4

4 に答える 4

1

これはFireFox3.5の公式バグです。そのための簡単なハックは、すべての切り取られたオブジェクトに対して2つのクラスを作成することです。1つは背景画像を持つすべての人に共通で、もう1つは背景位置を持つものです。それはすべて子供です!)

于 2009-09-22T07:29:59.907 に答える
1

FireFox 3.5 がサーバーから画像を読み込み、キャッシュを適切に使用していないことに問題があるようです。Google で「firefox 3.5 が画像をキャッシュしていません」と表示されると、多くの人がこの問題に気付くでしょう。

于 2009-09-01T07:17:31.097 に答える
0

gmapsJS関連です。次のような既存の変数へのポインタ(変数のコピー)を使用する必要があります。

defaulticon.sprite = {image:"/site_media/images/sprite.png", top:0};

myicon.sprite = defaulticon.sprite;
myicon2.sprite = defaulticon.sprite;
etc.
于 2009-07-01T22:39:06.330 に答える
0

Lighttpd を使用しているようです。静的ファイルにはModule: mod_expireを使用することをお勧めします。1 か月以上後に有効期限が切れるように設定します。詳細については、Yahooを参照してください。

于 2009-09-01T07:28:07.207 に答える