不少時候咱們要給一些按鈕或是img設置背景,而爲了達到數據與表現樣式分離的效果,一般背景樣式都是在CSS裏設定的,可是這個行爲在IE會有一 個Bug,那就是由於 IE默認狀況下不緩存背景圖片,因此當鼠標在有CSS背景的按鈕或是圖片上移動時,圖片會閃爍甚至鼠標會出現忙的狀態,而在FireFox下沒有這個問 題,爲了解決這個問題,有兩種解決辦法,其一是在CSS中加入以下樣式:html
html {
filter: expression(document.execCommand(」BackgroundImageCache」, false, true));
}express
但這個可能會使整個頁面的加載變得很慢,因此推薦使用JS來修正這個Bug,在頁面中的任意位置加入以下代碼,便可達到理想中的效果:緩存
(function(){
var browser=new Object();
browser.name=navigator.appName;
if(browser.name.indexOf("Microsoft")!=-1){
browser.version=navigator.appVersion.indexOf("MISE");
browser.version=parseInt(navigator.appVersion.substring(browser.version+4));
if(browser.version<=6){
document.execCommand("BackgroundImageCache",false,true);
}
}
})(window.navigator);app