我想从api.getlove.cn获得随机图片。所以我有button
点击即可获得一个。但是当我点击按钮时它只返回相同的图像。这是我的部分代码:
$(".btn").css("background-image",'url(' +"http://api.getlove.cn/api/img" + ')');
我不知道为什么它不会返回随机图片,我的代码有什么问题?当我点击按钮时如何获得随机图片?
答案 0 :(得分:2)
那是因为浏览器缓存了第一次加载的图像。并且在调用相同的url时,它会使用缓存的图像而不是加载新的图像。你应该为url添加一个随机参数(通过添加随机数的时间戳)来创建将再次加载的新url:
$(".btn").css("background-image",'url(' +"http://api.getlove.cn/api/img?t=" +Math.floor(Date.now() / 1000)+ ')');
$(".btn").click(function(){
$('body').css("background-image",'url(' +"http://api.getlove.cn/api/img?t=" +Math.floor(Date.now() / 1000)+ ')');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button class="btn">click here</button>