2011-02-09 44 views
0

我使用的网站缩略图生成服务,我拉出缩略图使用JavaScript这样的:的jQuery/JavaScript的 - X秒后刷新图像

$("body").append("<img class="thumbnail" src='http://s.wordpress.com/mshots/v1/"+url+"?w=200' width='200' />");

它工作正常,但如果第一次生成缩略图时,我收到了“生成预览...”消息,并且必须刷新页面才能看到图像。

那么有没有一种方法可以在我们说5秒后“刷新”图像,何时应该已经生成?

回答

3

我猜你可能一个无用的参数附加到URL无效浏览器缓存,并设置src属性。这将是最好把你的电话appendappendTo呼吁为此,我认为

$img = $('<img class="thumbnail" src="http://s.wordpress.com/mshots/v1/'+url+'?w=200" width="200" />').appendTo(document.body); 
setTimeout(function(){ 
    $img.attr('src', function(i, oldSrc){ 
     return oldSrc + '&_=reload'; 
    }); 
}, 5000); 
1

您正在寻找Javascript setTimeout方法。

1

是的,你可以使用setTimeout()funkcion。要强制形象重装,你应该在图像的补丁的末尾加上一个随机参数,例如,

domain.com/image.jpg?random_param=random_number 
1

这将在你的情况下工作。把你的图片放在一个“div”中,然后调用以下函数

function timestamp() { 
    var id = //get_element from the div 
    $("#id").append("<img class="thumbnail" src='http://s.wordpress.com/mshots/v1/"+url+"?w=200' width='200' />"); 
setTimeout("timestamp()", 60000); 
}