为什么这段js代码在ie中可以调用,火狐浏览器和谷歌浏览器都不管用呢,请高手指点一下

var hh = 5;
function opacitymenu()
{

if(document.getElementById("div_1").style.display == "none")
{
document.getElementById("div_2").filters.Alpha.opacity = 0;
document.getElementById("div_2").style.display="block";
document.getElementById("div_1").style.display="block";
showmenu();

}
else
{
hidemenu();
}
}

function showmenu()
{
document.getElementById("div_1").filters.Alpha.opacity +=hh;
if(document.getElementById("div_1").filters.Alpha.opacity < 50)
{
setTimeout("showmenu()",50);
}
}

function hidemenu()
{
document.getElementById("div_1").filters.Alpha.opacity -=hh;
if(document.getElementById("div_2").filters.Alpha.opacity > 10)
{

setTimeout("hidemenu()",50);

}
else
{
document.getElementById("div_1").style.display="none";
document.getElementById("div_2").style.display="none";

}
}

  您好,感谢您对火狐的支持

  filters是IE专属的滤镜效果,火狐浏览器不支持这一属性的。网上找个兼容的用吧。
  您可以在火狐官方网站下载火狐浏览器,在火狐社区了解更多内容。希望我的回答对您有所帮助,如有疑问,欢迎继续在本平台咨询。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-07-08
你这个用到了filters这个是IE特有的滤镜效果,所以其它浏览器是不支持的了追问

有没有什么别的办法啊

追答

给你改了一下看看行不行,没办法测试,关键是这句div_2.style.opacity = div_2.filters.Alpha.opacity / 100;
var hh = 5;
var div_1 = document.getElementById("div_1");
var div_2 = document.getElementById("div_2");
function opacitymenu()
{

if(div_1.style.display == "none")
{
div_2.filters.Alpha.opacity = 0;
div_2.style.opacity = div_2.filters.Alpha.opacity / 100;
div_2.style.display="block";
div_1.style.display="block";
showmenu();
}
else
{
hidemenu();
}
}

function showmenu()
{
div_1.filters.Alpha.opacity +=hh;
div_1.style.opacity = div_1.filters.Alpha.opacity / 100;
if(div_1.filters.Alpha.opacity 10)
{
setTimeout("hidemenu()",50);
}
else
{
div_1.style.display="none";
div_2.style.display="none";
}
}

本回答被提问者采纳
第2个回答  2011-07-08
检查<script language="javascript" type="javascript/css"></script>是否写错追问

这里没问题哦