javascriptやjQueryで画像を書き換えても変わらない場合
2024/02/28
けっこう前に画像をアップロードしてリアルタイムにプレビューする機能を作った時に、ブラウザによっては同じ画像が表示されるという現象が発生していた。キャッシュが原因のようで画像URLにタイムスタンプを付与することで解決できた。以下に対応方法をメモ。
ソースコード
var timestamp = new Date().getTime(); $('#img-id').attr('src', $('#img-id').attr('src')+'?'+timestamp);
timestamp部分はJavaScriptで取得しているがjQueryの場合は以下でも取得できる。
var timestamp = jQuery.now();
リファレンス
https://api.jquery.com/jQuery.now/
PHPでタイムスタンプを付けたい場合
関連記事
-
サムネイルをクリックすると拡大画像を表示できる「Lightbox」の利用方法
画像をサムネイル表示してクリックしたら大きく表示する というのがLightbox ...
-
ライブラリ等を使用せずファイルをドラッグ&ドロップでアップロードする方法
formにドラッグ&ドロップでファイルをアップロードする機能を実装する場 ...
-
jquery.snipeの使い方
使い方によっては面白くなりそう。 ■jquery.snipe http://ra ...
-
jQueryで画像を遅延ロードする「jquery.lazyload.js」の利用方法
画像を遅延ロードさせたい時にはjQueryプラグインのlazyloadが便利。以 ...
-
jQueryで画像(タグ内)のsrc情報を取得する場合
すぐに出てこなかったのでメモ。 $('#test').attr('src'); ...