首页  >  文章  >  web前端  >  javascript怎么实现不停淡入淡出

javascript怎么实现不停淡入淡出

青灯夜游
青灯夜游原创
2021-10-18 15:48:492583浏览

实现方法:1、使用querySelector()获取指定元素对象;2、使用“元素对象.style.opacity = Math.sin(2 * Math.PI * time)”语句来控制淡入或淡出效果;3、使用递归的方式实现不停淡入淡出。

javascript怎么实现不停淡入淡出

本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

javascript实现不停淡入淡出

只需要找到一个作用域为[0,1]的周期函数。将周期函数的值作为opacity的属性值即可控制淡入或淡出效果。

利用递归即可不停淡入淡出。

实现代码:

<h1 id="text">床前明月光,疑是地上霜。</h1>
<script type="text/javascript">
var duration = 3000;
var startTime = new Date();
var p = 0;
requestAnimationFrame(function f(){
  //获取到元素
  var el = document.querySelector("#text");

  var time = ( new Date - startTime ) / duration;
  el.style.opacity = Math.sin(2 * Math.PI * time);
  requestAnimationFrame(f);
});

效果图:

1.gif

【推荐学习:javascript高级教程

以上是javascript怎么实现不停淡入淡出的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn