Đây là thứ tôi đã biên dịch có thể giúp ích. Tôi không thể kiểm tra việc này, vui lòng cho tôi biết nếu bạn gặp bất kỳ vấn đề nào.
$(function() {
var $images = $('img.imageClassUpdateAtInterval:not([src="/assets/spinner.gif"])');
// Now, no such image with
// a spinner
if($images.length === 0 && window.imageLocator)
clearInterval(window.imageLocator);
window.imageLocator = setInterval(function() {
$images.each(function() {
$this = $(this);
if (!$this.data('src')) {
$this.data('src', $this.prop('src'));
}
$this.prop('src', $this.data('src') + '?timestamp=' + new Date().getTime());
console.log($this.prop('src'));
});
}, 60 * 1000);
// suppose, an error occured during
// locating the src (source) of the
// image - image not found, network
// unable to locate the resource etc.
// it will fall in each time on error
// occurred
$('img.imageClassUpdateAtInterval').error(
function() {
// set a broken image
$(this).unbind("error").attr("src", "/assets/broken.gif");
// setting this up in relative
// position
$(this).css("position", "relative");
$(this).apppend("<span>Error occured</span>");
$(this).find("span").css({"position": "absolute", "background-color": "#252525", "padding": ".3em", "bottom": "0"});
});
});
Các giải pháp trên được biên soạn từ hai giải pháp khác nhau bắt đầu bởi @user113716 và @travis
Nguồn
2012-01-23 08:08:52
Đó là đầu vào tuyệt vời. Cảm ơn! Tôi thích thông tin bổ sung. Đây là js ban đầu tôi đang sử dụng để thực sự tải lại một số hình ảnh dựa trên một lớp học mỗi 60 giây. Tôi sẽ * rất * đánh giá cao việc thấy điều này được tích hợp vào mã sau đây tôi đang sử dụng để hai ví dụ bạn đã tích hợp đúng (tôi khá mới để làm việc trong js ở bất kỳ mức độ quan trọng): http: // j. mp/wzi7FI – ylluminate
Xin lỗi ylluminate. Tôi đã đi. Tôi đã chỉnh sửa bài đăng của mình và tôi hy vọng điều này sẽ giúp bạn. –
Hoạt động tốt, cảm ơn! Có một vài điều chỉnh để thực hiện, nhưng bạn đã nhận nó xuống đủ tốt. Siêu công việc. – ylluminate