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

 更新时间:2018年04月28日 14:55:02   作者:爱吃番茄的西红柿  
这篇文章主要介绍了JS实现的透明度渐变动画效果,涉及javascript响应鼠标事件针对页面元素属性动态操作相关实现技巧,需要的朋友可以参考下

本文实例讲述了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>

运行效果:

小结:

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

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

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

相关文章

  • 善用事件代理,警惕闭包的性能陷阱。

    善用事件代理,警惕闭包的性能陷阱。

    关于JS性能优化中的冰山一角:事件代理、警惕闭包。其实本文有一个文章已经说到,闭包如何产生,闭包的作用;
    2011-01-01
  • js之encodeURI、encodeURIComponent、decodeURI、decodeURIComponent

    js之encodeURI、encodeURIComponent、decodeURI、decodeURIComponent

    这篇文章主要介绍了js之encodeURI、encodeURIComponent、decodeURI、decodeURIComponent的使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • JS实现在线统计一个页面内鼠标点击次数的方法

    JS实现在线统计一个页面内鼠标点击次数的方法

    这篇文章主要介绍了JS实现在线统计一个页面内鼠标点击次数的方法,实例分析了javascript操作Cookie实现计数的技巧,需要的朋友可以参考下
    2015-02-02
  • JavaScript使用setTimeout实现延迟弹出警告框的方法

    JavaScript使用setTimeout实现延迟弹出警告框的方法

    这篇文章主要介绍了JavaScript使用setTimeout实现延迟弹出警告框的方法,实例分析了javascript中setTimeout函数的使用技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • JS设计模式之状态模式的用法使用方法

    JS设计模式之状态模式的用法使用方法

    JavaScript状态模式是一种行为型设计模式,核心是对象在其内部状态改变时改变其行为,状态模式将对象的行为封装到不同的状态类中,使得对象在不同状态下可以选择不同的行为,本文给大家详细的介绍一下状态设计模式在Js中的使用,需要的朋友可以参考下
    2023-08-08
  • 自动完成JS类(纯JS, Ajax模式)

    自动完成JS类(纯JS, Ajax模式)

    自动完成JS类,用户体验较好。封装成类,方便使用。本站
    2009-03-03
  • 对js中回调函数的一些看法

    对js中回调函数的一些看法

    下面小编就为大家带来一篇对js中回调函数的一些看法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • 前端大文件分片MinIO上传的详细代码

    前端大文件分片MinIO上传的详细代码

    这篇文章主要给大家介绍了关于前端大文件分片MinIO上传的详细代码,Minio支持分片上传大文件,这个功能可以让用户将大文件划分成小块,然后在多个并行的HTTP请求中上传这些小块,从而提高上传速度和稳定性,需要的朋友可以参考下
    2024-09-09
  • MVVM模式中ViewModel和View、Model有什么区别?

    MVVM模式中ViewModel和View、Model有什么区别?

    这篇文章主要介绍了MVVM模式中ViewModel和View、Model有什么区别?本文分别解释了它们的功能和作用,然后总结了它之间的区别,需要的朋友可以参考下
    2015-06-06
  • 自己写了一个展开和收起的多更能型的js效果

    自己写了一个展开和收起的多更能型的js效果

    展开和收起这样的效果想必大家早就眼熟了吧,利用闲暇时间用js写了一个具体功能:当自己处于全部显示的时候,点击自己的收起,自己收起等等感兴趣的你可以参考下哈
    2013-03-03

最新评论