勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

javascriptやjQueryで画像を書き換えても変わらない場合

   2024/02/28  jQuery JavaScript

けっこう前に画像をアップロードしてリアルタイムにプレビューする機能を作った時に、ブラウザによっては同じ画像が表示されるという現象が発生していた。キャッシュが原因のようで画像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でタイムスタンプを付けたい場合

imgタグのsrc属性のURLにPHPでタイムスタンプを付与しキャッシュ対策する方法

 - jQuery JavaScript

  関連記事

jQueryで画像を遅延ロードする(jquery.lazyload.js)

画像を遅延ロードさせたい時にはlazyloadが便利。 ■ダウンロード http ...

画像をサムネイル⇔クリックで拡大(lightbox)

画像をサムネイル表示してクリックしたら大きく表示する というのがlightbox ...

Ajaxで画像のアップロード(jquery.upload)

業務中に画像の選択後、アップロードボタンを押して画像のアップ、 その後フォームの ...

jQuery.uploadでリアルタイムプレビュー

やりたい事は、 ・<input type="file">で画像を選択 ...

画像をドラッグ&ドロップでアップロード

■2015/04/15追記 以下記事の方が新しくて詳しい。 http://tai ...