<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>关于JS使用CSS滤镜的问题</title>
</head><body>
<div id="test">demo</div>
<script type="text/javascript">
document.getElementById('test').filters.alpha.opacity=20;  //这句代码报错
</script>    
</body>
</html>希望下面回复的,最好给出正确的完整代码,并说明原因。

解决方案 »

  1.   

    document.getElementById('test').filters.alpha.opacity= 0.2;  //这句代码报错
        document.getElementById('test').style.filter = "progid:DXImageTransform.Microsoft.Alpha(sProperties)";
      

  2.   

    filters是个数组,还有opacity的值是0 -1, 0-100%
      

  3.   

    document.getElementById('test').filters[0].alpha.opacity=20
      

  4.   

    document.getElementById('test').filters[0].alpha.opacity=20
      

  5.   


    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>关于JS使用CSS滤镜的问题</title>
    </head><body>
        <img id="test" src="http://avatar.profile.csdn.net/noavatar_2.gif" />
    <script type="text/javascript">
        document.getElementById('test').style.filter = "alpha(opacity:20)";
    </script>    
    </body>
    </html>
      

  6.   

    一定要用div的话:
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>关于JS使用CSS滤镜的问题</title>
    </head><body>
        <div id="test" style="zoom:1">demo</div>
    <script type="text/javascript">
        document.getElementById('test').style.filter = "alpha(opacity:20)";
    </script>    
    </body>
    </html>
    注意zoom:1。强制ie使用hasLayout
      

  7.   

    IE里不是hasLayout的元素是没法应用滤镜的
      

  8.   

    我测试过他的代码。 的的确是可行的。 如果不用 Zoom:1  的话。 在IE6是不行,IE8也是可行的