4

何らかの理由で、画像がキャッシュに保存されている場合、jQuery .load は起動しません (Chrome のみ)。

ここにjsfiddleがあります

どうすれば修正できますか?

4

3 に答える 3

6

これは、現在のsrc新しい srcが同じ場合、両方が同じであるため、新しいイメージをロードしないためです。これに対するハックは、現在のsrc値を空白にすることです。

$("#btn").click(function(){
    $("#tst").attr('src','');
    $("#tst").attr('src','https://www.google.co.il/images/srpr/logo3w.png');
});

<a href="http://jsfiddle.net/Vaishak/uYmWQ/2/">jsFiddle デモ リンク

于 2012-06-27T15:32:31.643 に答える
1

たとえば、タイムスタンプを使用できます。

    var timestamp = new Date().getTime();
    $("#image_test")
      .attr("src", "http://www.sandiegovips.com/wp-content/uploads/2014/05/test-image.jpeg?timestamp="+timestamp)
      .load(function() {
             alert("image loaded!");
       }); 
<img id='image_test' src=""/>

于 2015-04-20T10:59:44.427 に答える
0

画像の URL にタイムスタンプを含めることで、キャッシュをバイパスできます。これにより、要求されるたびにキャッシュされた画像が更新されます。

于 2012-06-27T14:46:37.227 に答える