如果使用下面的方式操作img的src在IE6下会重复请求img的url,导致最终显示的img图片(验证码)不一样:
function changPic(imgs){
var len = imgs.length,
src = imgs[0].src.split('?')[0]+'?'+new Date(); // 动态的验证码
while(len--){
imgs[len].src = src;
}
}
然后结合以前的图片加载问题,写了下面一段代码就OK了。
function changPic(imgs){
var len = imgs.length,
img = new Image(),
src = imgs[0].src.split('?')[0]+'?'+new Date(); // 动态的验证码
// no-cache and for ie get http request repeatly
img.onload = function(){
while(len--){
imgs[len].src = src;
}
}
img.src = src;
}
本文介绍了一种在Internet Explorer 6浏览器中解决图片重复加载的技术方案,特别是针对动态验证码图片的情况。通过分离缓存控制逻辑和利用图片加载事件来避免多次不必要的HTTP请求。
1742

被折叠的 条评论
为什么被折叠?



