JS实现的透明度渐变动画效果示例
编程学习 2021-07-04 16:45www.dzhlxh.cn编程入门
这篇文章主要介绍了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程序设计有所帮助。