2

キャッシュからロードされる可能性があるときに、Firebugが誤ってダウンロードを[ネット]タブに追加している可能性はありますか?

Javascriptギャラリーにいくつかのコードがあります。これは、サムネイルがクリックされたときに画像を遅延ダウンロードし、ダウンロードしたらそれを表示することを目的としています。これは、(ブール値の配列を介して)すでに最初にダウンロードされているかどうかを判別し、以前にダウンロードされている場合は、単にキャッシュから表示することを目的としています。

しばらくは問題なく動作していると思いましたが(2回クリックすると表示される速度のため)、最近Firebugの[ネット]タブを調べたところ、毎回大きな画像がダウンロードされているようです(ファイルの合計サイズがクリックするたびに大きくなります)。

少しデバッグしたところ、ブール値が正しく更新されていることがわかったので、何を間違えたのかわかりません。

だから私の質問は、Firebugが間違っている可能性があるか(私はそれを疑う)、またはキャッシュから表示するように強制する方法はありますか(image.srcの画像へのまったく同じパスを使用するとこれができると思いました)

これはJavascriptのオブジェクトへの私の最初の冒険だったので、私のコードに100%自信がないので、親切にしてください!

4

3 に答える 3

6

firebug の net タブに表示される画像は、サーバーからダウンロードされたものではありません。firebug が画像について報告する HTTP 応答コードを確認してください。

ハードキャッシュしたいコンポーネントの遠い将来のヘッダーを送信することで、キャッシュがまだ新しいかどうかをチェックする余分な HTTP リクエストを回避できます。ただし、この方法でキャッシュされたコンポーネントをクライアントに強制的に再ダウンロードさせるには、ファイル名を変更する必要があることに注意してください。

于 2008-12-09T08:45:40.690 に答える
4

Firebugは100%正しくない可能性があります。または、少なくとも、Firebugがオフになっている場合に発生することとは正確に一致しない可能性があります。

FiddlerまたはWireSharkを使用してネットワークアクティビティをチェックし、外観が異なるかどうかを確認します。FiddlerはIEのデバッグプロキシであり、WireSharkはパケットスニファです。

ボンネットの下に潜ったことがないので、Firebugネットモニターがどのように機能するかを正確に言うことはできませんが、Firebugをオフにすると消えた、自分の行動のバグだと思ったいくつかのことを経験しました。

物事を測定する行為におけるFirebugは、「あなたの量子猫を見る」ような方法で物事を変えるようです。Firebugはまだ揺れていますが、いくつかの制限があります。

于 2008-12-09T06:44:45.347 に答える
1

私はあなたのサイトをチェックし、CacheViewer を使用して、実際にキャッシュしてディスクから取得していることを確認しました。有効期限は今日から 1 か月です。必要に応じて、すべての画像を 1 つの大きな画像に結合して関心領域のみを表示する plsicing を使用することもできますが、私は通常、ページング アイコンなどの小さな画像にスプライシングを使用します。大きな画像の読み込みを遅らせます。

于 2009-09-15T12:07:55.210 に答える