JQuery点击更改图像源未刷新图像

3

我正在使用jQuery代码更改图像的src属性:

<script>
$(document).ready(function() {

$('#MyDiv').click(function() {
    $('#MyImageID').attr('src', 'image1.jpg');
});

});
</script>

我的问题是,尽管它实际上更改了src,但它实际上没有显示新图像。

它必须刷新图像吗?

我该如何解决这个问题?


这个图片是否存在于包含此JavaScript的文件所在的同一目录中? - lamplightdev
没有...但我尝试添加完整的URL,它仍然不显示,尽管图像src已更改。 - Satch3000
你尝试过添加时间戳以防缓存问题吗? - Alex
@Satch3000 旧图像仍在显示吗?还是显示为损坏的图像(或根本没有图像)? - lamplightdev
应该可以工作,请参见:http://jsfiddle.net/KfpzW/ 我猜你在尝试分配文件时遇到了一些问题。 - m90
3个回答

11

将一些随机数传递给图片:

 $('#MyImageID').attr('src', 'image1.jpg?'+Math.random());

1
尝试在更改src后分离并重新连接<img>

0

未经测试但我认为应该可以工作

是的,您必须加载图像:

var image = document.createElement('img'); // new Image(1, 1); 
image.src = 'image1.jpg';
image.onload = function() { $('#MyImageID').attr('src', 'image1.jpg');};

或者你也可以替换标签,应该也可以工作


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接