Jquery函数加载和缓存图像

时间:2013-12-13 13:11:15

标签: jquery load browser-cache

我尝试尝试修复此但没有得到,我的脚本在jquery加载网址并在此网址中显示一个图片,此图片在这种情况下始终具有相同的名称“pic.jpg”,此图像每小时更改一次,但所有时间显示相同的图片,没有显示新图像的变化

我的脚本就是这个,我尝试使用rand url和cache:false修复,但继续问题

<script>

$.ajaxSetup ({
cache: false
});

jQuery(document).ready(function(){

var auto_refresh = setInterval(

function ()
{   

var randnumber=Math.floor(Math.random()*999999999999);
jQuery("#login_data_top_pic_profile").load("index_users.php?load_pic_profile=ok&rand_n="+randnumber);   

},3000);


});
</script>

另外我放入php删除缓存标头并继续不工作

我可以通过我的小脚本获得一些帮助来解决这个问题,谢谢你的帮助,问候

P.D:当从脚本调用index_users.php时,总是有这个代码:

<?php
if ($_REQUEST[load_pic_profile]=="ok")
{
?>
<img src="profile_user/user1/pic.jpg">
<?php
}
else
{
?>
<img src="profile_user/user1/no_pic.jpg">
<?php
}
?>

名为pic.jpg的图像总是改变但没有他的名字

2 个答案:

答案 0 :(得分:0)

你想在那里做什么?我所看到的是,你开始加载页面...而不是设置一个间隔加载图像...在你的情况下3秒后。是一个改变图像的脚本?是否真的是一个小时后您尝试加载的新图像? 对不起发布在这里...通常我会发布到评论中,但我必须少点。

答案 1 :(得分:0)

图片由您的浏览器缓存。最简单的解决方案是修改HTML

<img src="pic.jpg?<?php echo time(); ?>" />

您还可以在与图像

相同的目录中添加.htaccess文件
<Files "pic.jpg">
   Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
</Files>