实现方法:1、使用querySelector()获取指定元素对象;2、使用“元素对象.style.opacity = Math.sin(2 * Math.PI * time)”语句来控制淡入或淡出效果;3、使用递归的方式实现不停淡入淡出。
本教程操作环境: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);
});
效果图:
【推荐学习:javascript高级教程】
以上就是javascript怎么实现不停淡入淡出的详细内容,转载自php中文网
发表评论 取消回复