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

    javascript匀速运动实现淡入淡出的效果(代码)

    不言不言2018-08-31 10:19:49原创520
    本篇文章给大家带来的内容是关于javascript匀速运动实现淡入淡出的效果(代码) ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

    原理

    注意:透明度无法直接在js中做判断,我们采用alpha参数做比较,最后应用到对象上。

    实现div淡入淡出

    <!DOCTYPE html>
    <html>
      <head>
        <title>div淡入淡出</title>
        <style>
          #div1{
            width: 200px;
            height: 200px;
            background: red;
            /* ie */
            filter: alpha(opacity:30);
            /* chrome firefox */
            opacity:0.3;
          }
        </style>
        <script>
          window.onload=function(){
            var oDiv=document.getElementById("div1");
            oDiv.onmouseover=function(){
              startMove(100);
            }
            oDiv.onmouseout=function(){
              startMove(30);
            }
          }
          var timer=null;
          var alpha=30;//透明度默认30
          function startMove(iTarget){
            var oDiv=document.getElementById("div1");
            clearInterval(timer);
            timer=setInterval(function(){
              var speed=0;
              if(alpha<iTarget){
                speed=5;
              }else{
                speed=-5;
              }
              if(alpha===iTarget){
                clearInterval(timer);
              }else{
                alpha+=speed;
                oDiv.style.filter="alpha(opacity:"+alpha+")";
                oDiv.style.opacity=alpha/100;
              }
            },30);
          }
        </script>
      </head>
      <body>
        <div id="div1"></div>
      </body>
    </html>

    实现图片淡入淡出

    <!DOCTYPE html>
    <html>
      <head>
        <title>图片淡入淡出</title>
        <style>
          #img1{
            /* ie */
            filter: alpha(opacity:30);
            /* chrome firefox */
            opacity: 0.3;
            border: 1px solid #000;
          }
        </style>
        <script>
          window.onload=function(){
            var oImg=document.getElementById("img1");
            oImg.onmouseover=function(){
              startMove(100);
            }
            oImg.onmouseout=function(){
              startMove(30);
            }
          }
          var timer=null;
          var alpha=30;//透明度默认30
          function startMove(iTarget){
            var oImg=document.getElementById("img1");
            clearInterval(timer);
            timer=setInterval(function(){
              var speed=0;
              if(alpha<iTarget){
                speed=5;
              }else{
                speed=-5;
              }
              if(alpha===iTarget){
                clearInterval(timer);
              }else{
                alpha+=speed;
                oImg.style.filter="alpha(opacity:"+alpha+")";
                oImg.style.opacity=alpha/100;
              }
            },30);
          }
        </script>
      </head>
      <body>
        <img id="img1" src="img1.jpg" alt="">
      </body>
    </html>

    相关推荐:

    javascript匀速运动实现侧边栏分享效果(代码)

    js实现图片匀速淡入淡出

    用jQuery实现广告滚动及淡入淡出

    以上就是javascript匀速运动实现淡入淡出的效果(代码)的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:javascript
    上一篇:深入理解JavaScript执行机制 下一篇:js如何实现缓冲运动(代码实例)

    相关文章推荐

    • jQuery代码实现图片墙自动+手动淡入淡出切换效果_jquery• jquery淡入淡出效果简单实例_jquery• 原生js和jQuery实现淡入淡出轮播效果_jquery• js如何实现淡入淡出效果_javascript技巧• js淡入淡出焦点图幻灯片效果代码分享_javascript技巧

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网