我正在检查图像是否加载了不使用imagesloaded库,如果任何时候图像无法加载,那么我将“src”替换为“data-src”。基本上我的html结构如下。
<img id="pics-image-0-1" src="URL1" data-src="URL2" owidth="137" style="visibility: visible; margin-left: -4px; width: 137px;">
<img id="pics-image-0-2" src="URL1" data-src="URL2" owidth="137" style="visibility: visible; margin-left: -4px; width: 137px;">
我使用了如下图片
jQuery("img[id^='pics-image-0").imagesLoaded()
.progress(function (instance, image) {
var imgId = image.img.id;
if (image.isLoaded) {
//display the image.
} else{
// replace src with data-src
}
});
在上面的代码中,当我知道URL1被破坏时,我正在用data-src替换src。
但是有时由于服务器上的负载很重,如果URL1的服务速度非常慢,那么我希望如果URL1在20秒内无法加载,那么将src替换为data-src。
要做到这一点,我想的是一个独立的功能,它将在20秒后完成。但我的问题是它会是好方法吗?是否可以在运行时修改延迟对象。
我尝试在imagesloaded.js上编写包装符合我的要求,但没有运气。
我也试过https://github.com/darsain/imagesloaded(不同的版本)但没有按预期工作。
有人可以建议如何解决上述问题吗?用独立函数替换url是不是很好?