吵吵   2011-03-03  阅读:2,814

不同浏览器之间对js的兼容问题近来是有所改善的,但是话说是越来越标准了,不同浏览器之间还是有些许不同的 www.chaochaoblog.com

今天改了半天终于明白了ie firefox chrome 浏览器之间调用透明属性的秘密 这是一个透明弹窗渐变的代码:

<SCRIPT LANGUAGE=”JavaScript”>
function changeH(addH) {
var MsgPop=document.getElementById(“winpop”);
if(document.all){
if(MsgPop.filters.alpha.opacity<100){
MsgPop.filters.alpha.opacity+=addH;
}
else{
clearInterval(tPop);
}
}
else{

if(count<1){
count+=0.01;
MsgPop.style.opacity=count;
}
else{
clearInterval(tPop);
}
}
}

从上面们可以知道:www.chaochaoblog.com

if(documetn.all)判断的是ie 那么ie使用js获取并更改对象的透明纸就是:obj.filters.alpha.opacity而且透明值的改变是从1到100的。其它的浏览器,即火狐和谷歌是obj.style.opacity,而且透明值是从0到1的。基于以上两点在css中定义透明度的时候也要注意,ie要用:filter:alpha(opacity=0);而火狐和谷歌就是:opacity:0.01;

从这一角度来说火狐和谷歌的明明规则好像差不多了。为了兼容性的问题还需要注意的是要尽量用document.getElementById(“obj”);否则你只用obj.height这样子用的话你就只是ie的天下了。

吵吵微信朋友圈,请付款实名加入:

吵吵 吵吵

发表评论

电子邮件地址不会被公开。 必填项已用*标注