1

私のメイン ページには大きなサイズの画像 (~6 MB) があります。マップの一種です。
ブラウザを閉じたり、PCを再起動したりしても、その画像をユーザーのブラウザに保存したいのですが、どうにかできますか? 重要な場合は、その画像が CSS ファイルで使用されます。
私のホスティングは帯域幅が狭いため、ユーザーのブラウザにできるだけ長くその画像を保存したいと思います。ヒントをありがとう.

4

5 に答える 5

4

これにはいくつかのオプションがあり、いくつかは他よりも複雑です。

最もクロスブラウザな方法は、キャッシュ ヘッダーを long cache timesに設定し、URL の一貫性を保つことです (@Petah の提案と同様)。

一部のブラウザは、 HTML5 ファイル APIをサポートしています。サポートされている場合は、JavaScript を使用してここに画像を保存できます。

HTML5 AppCacheを使用することもできますが(これもサポートが制限されています)、アプリケーションの構造に注意する必要があります。これは、キャッシュ マニフェストが変更されるまで HTML ページが永久にキャッシュされるためです。

また、画像をデータ URL としてシリアル化し(かなり十分にサポートされています)、その文字列をローカルに保存することもできます(localstorage、cookie)。ページの読み込みに永遠に時間がかかるため、これはおそらく優れたオプションではありません。

于 2012-09-03T08:36:54.213 に答える
0

帯域幅が心配な場合は、画像をいくつかの画像サービス(インターネット上に多数あります)にアップロードし、そのURLをCSSに含めてみませんか?

これらの(無料の)サービスには、注意が必要ないくつかの懸念事項があります。

  • 一部の画像ホスティングサービスは、スタイルシートやフォーラムの投稿などの他のサイトに含まれている場合、画像のレンダリングをブロックします(通常は「許可されていません...」というテキストの画像を使用します)。それ
  • 無料のサービスの場合、画像の読み込み時間は大幅に異なる可能性があります。これは、クライアントのブラウザに読み込まれるとキャッシュされるため、大したことではありません。
  • サービスが一時的に利用できなくなり、お客様にご迷惑をおかけする場合があります
于 2012-09-03T08:40:16.533 に答える
0

キャッシュのベスト プラクティスを調べる必要があります。

于 2012-09-03T08:30:34.653 に答える
0

その画像に正しい HTTP キャッシュ ヘッダーを設定する必要があります。それらを使用して、ブラウザー (およびその間のすべてのプロキシー) に、その画像をできるだけ長く保持するように指示します。しかし、それはユーザーがそのイメージを持っていると、彼がそれを永遠に持つことを保証するものではありません. さまざまな理由でキャッシュから削除される可能性があります (ユーザーがキャッシュをクリアした、ブラウザーが削除したなど)。

このグーグル検索から始めてください。より具体的な情報が必要な場合は、使用している Web サーバーをお知らせください。

于 2012-09-03T08:30:36.243 に答える