• 技术文章 >web前端 >js教程

    如何操作JS实现透明度渐变动画

    php中世界最好的语言php中世界最好的语言2018-06-01 14:40:49原创884
    这次给大家带来如何操作JS实现透明度渐变动画,操作JS实现透明度渐变动画的注意事项有哪些,下面就是实战案例,一起来看一下。

    <!DOCTYPE html>
    <html>
      <head>
      <meta charset="utf-8">
        <title>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>
        <p class="redb" id="opbtn"></p>
        <script>
        window.onload = function(){
          var opp = document.getElementById("opbtn");
          opp.onmouseover = function(){
            startMove(100);
          }
          opp.onmouseout = function(){
            startMove(30);
          }
        }
        var timer = null;
        var alpha = 30;
        var speed = 0;
        function startMove(opTarget){
          clearInterval(timer);
          var opp = 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;
              opp.style.opacity = alpha/100;
              opp.style.filter = 'alpha(opacity='+alpha+')';
            }
          },100);
        }
        </script>
      </body>
    </html>

    小结:

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

    相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

    推荐阅读:

    怎样进行JS内DOM节点使用

    使用缓存调用链实现JS方法重载步骤详解

    以上就是如何操作JS实现透明度渐变动画的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:javascript 透明度 渐变
    上一篇:怎样操作vscode内使用.vue代码 下一篇:通过在vue项目中引入noVNC远程桌面的方法步骤有哪些
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【腾讯云】年中优惠,「专享618元」优惠券!• 什么是消息队列?node中如何使用消息队列?• JavaScript的Symbol类型、隐藏属性及全局注册表详解• 18个常见angular面试题(附答案分析)• 浅析IDEA中如何开发Angular• 整理总结JavaScript常见的BOM操作
    1/1

    PHP中文网