欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JS实现的透明度渐变动画效果示例

程序员文章站 2023-01-28 19:35:44
本文实例讲述了js实现的透明度渐变动画效果。分享给大家供大家参考,具体如下: <...

本文实例讲述了js实现的透明度渐变动画效果。分享给大家供大家参考,具体如下:

<!doctype html>
<html>
  <head>
  <meta charset="utf-8">
    <title>www.jb51.net js透明度变化效果</title>
    <style>
    body{
      margin: 0px;
      padding: 0px;
    }
    .redb{
      width:200px;
      height: 200px;
      background: red;
      filter:alpha(opacity=30);
      opacity: 0.3;
    }
    </style>
  </head>
  <body>
    <div class="redb" id="opbtn"></div>
    <script>
    window.onload = function(){
      var opdiv = document.getelementbyid("opbtn");
      opdiv.onmouseover = function(){
        startmove(100);
      }
      opdiv.onmouseout = function(){
        startmove(30);
      }
    }
    var timer = null;
    var alpha = 30;
    var speed = 0;
    function startmove(optarget){
      clearinterval(timer);
      var opdiv = document.getelementbyid("opbtn");
      timer = setinterval(function(){
        if(alpha<optarget){
          speed = 10;
        }
        else if(alpha>optarget){
          speed = -10;
        }
        if(alpha==optarget){
          clearinterval(timer);
        }
        else{
          alpha += speed;
          opdiv.style.opacity = alpha/100;
          opdiv.style.filter = 'alpha(opacity='+alpha+')';
        }
      },100);
    }
    </script>
  </body>
</html>

运行效果:

JS实现的透明度渐变动画效果示例

小结:

1、filter和opacity区别:w3c标准透明度就是opacity,filter只有ie才能用,其他浏览器都支持opacity
2、改变透明度时候,不能通过类似offsetleft的方法获取透明度值,因此需要单独创建变量
3、不要忘记将定时器赋值给timer

更多关于javascript相关内容感兴趣的读者可查看本站专题:《javascript页面元素操作技巧总结》、《javascript运动效果与技巧汇总》、《javascript动画特效与技巧汇总》、《javascript图形绘制技巧总结》、《javascript切换特效与技巧总结》、《javascript错误与调试技巧总结》、《javascript数据结构与算法技巧总结》及《javascript数学运算用法总结

希望本文所述对大家javascript程序设计有所帮助。