Posted in Javascript onDecember 09, 2010
用一句代码即可搞定:
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; }
IE6下CSS图片缓存问题解决方法
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@