交互设计中心-72色

交互设计中心 | 用户体验 | 优化

修复IE背景图片闪烁或不见的现象

2008年4月3日 | 分类:jquery/javascript | 评论:0 | 引用:0 | 浏览: | Tags:css  div  js  javascript  IE6  

为什么会出现闪烁或不见现象?
IE6在处理A标签的CSS定义中的背景图片属性时候,当你把鼠标移上去的时候每次都会去检查是否有一个新的版本。
你可能会看到背景图片短暂或更长的闪烁。可能因为,网速,CPU速度或者背景图片大小;
你也可能看不图片的闪烁,但会注意到鼠标指针由默认的形状变成闪烁的形状,意味着这里在运行着一些东西。
如果你改变了IE的“temporay internet files"设置为"每次访问此页时检查",那么你一定可以看到闪烁现象。
如何解决这个问题?
事实上非常简单。
只要添加几行javascript代码到页面head区域即可。
try {
document.execCommand("BackgroundImageCache", false, true);
} catch(err) {}
注意:
无论页面刷新还是浏览到其他页面,这个修复都将起作用。
如果你想在同一个浏览会话中再次看到闪烁现象,你必须显式禁止这个修补。

还有一个纯css方式,在css中加入如下代码

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

鉴于expression严重影响浏览器效率,建议采用javascript方式。

Share
« 关于背景半透明---转你的名字永远刻在了她的心理 »



◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。