您的位置:首页 > Web前端 > CSS

IE6下CSS图片缓存问题解决方法

2010-12-09 00:00 621 查看
用一句代码即可搞定:
document.execCommand("BackgroundImageCache", false, true);

当然为了其它浏览器上能正常通过,需要做下判断后调用,才更安全:

 
if(Browser.isIE6){
try{document.execCommand("BackgroundImageCache", false, true);}
catch(e1){}
}


平台检测代码可以这样写,摘自Ext源码:

var Browser = {}; 
try{ 
(function(){ 
var idSeed = 0, 
ua = navigator.userAgent.toLowerCase(), 
check = function(r){ 
return r.test(ua); 
}, 
DOC = document, 
isStrict = DOC.compatMode == "CSS1Compat", 
isOpera = check(/opera/), 
isChrome = check(/\bchrome\b/), 
isWebKit = check(/webkit/), 
isSafari = !isChrome && check(/safari/), 
isSafari2 = isSafari && check(/applewebkit\/4/), // unique to Safari 2 
isSafari3 = isSafari && check(/version\/3/), 
isSafari4 = isSafari && check(/version\/4/), 
isIE = !isOpera && check(/msie/), 
isIE7 = isIE && check(/msie 7/), 
isIE8 = isIE && check(/msie 8/), 
isIE6 = isIE && !isIE7 && !isIE8, 
isGecko = !isWebKit && check(/gecko/), 
isGecko2 = isGecko && check(/rv:1\.8/), 
isGecko3 = isGecko && check(/rv:1\.9/), 
isBorderBox = isIE && !isStrict, 
isWindows = check(/windows|win32/), 
isMac = check(/macintosh|mac os x/), 
isAir = check(/adobeair/), 
isLinux = check(/linux/), 
isIpad = check(/ipad/), 
isSecure = /^https/i.test(window.location.protocol); 
extend(Browser,{ 
isOpera:isOpera, 
isIE:isIE, 
isIE6:isIE6, 
isFirefox:isGecko, 
isSafari:isSafari, 
isChrome:isChrome, 
isIpad:isIpad 
}); 
})(); 
}catch(e){}

//上面extend方法也很easy

function extend(obj1,obj2){ 
for(var o in obj2){ 
obj1[o] = obj2[o]; 
} 
return obj1; 
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: