您的位置:首页 > 其它

document.execCommand("BackgroundImageCache",false)

2013-09-12 10:44 627 查看
很多时候,我们给按钮或者图片设置背景,但为了样式和结构分离,通常背景都在css里面设置,但是IE这一行为会有一个bug,那就是因为IE在默认的情况下,不缓存背景图片。所以当鼠标在有css背景的按钮或者图片移动的时候,图片会闪烁甚至鼠标会出现忙的状态。而在FireFox下没有这个问 题,为了解决这个问题,有两种解决办法,其一是在CSS中加入如下样式:

html{filter:expression:document.execCommand("BackgroundImageCache",false,true);}


但这个 可能会使整个页面加载变得很慢,所以推荐使用JS修正这个bug,在页面中的任意位置加入如下代码,即可达到理想中的效果:

(function() {
var browser = {};
browser.name = navigator.appName;
if (browser.name.indexOf("Microsoft") != -1) {
browser.msie = navigator.appVersion.indexOf("MSIE");
browser.version = parseInt(navigator.appVersion.substring(browser.msie + 4));
if (browser.version <= 6) {
document.execCommand("BackgroundImageCache", false, true);
}
}
})(window.navigator) //闭包传参
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐