js动画(2)——透明度动画
2016-02-18 21:43
633 查看
<html> <head> <title>透明度变化效果</title> <style> body{ margin: 0px; padding: 0px; } .redb{ width:200px; height: 200px; background: red; filter:alpha(opacity=30); opacity: 0.3; } </style> <script src="file:///F:/front end/jqueryjquery-1.11.3.min.js" type="text/javascript"></script> </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+')'; } },30); } </script> </body> </html>
小结:
1、filter和opacity区别:w3c标准透明度就是opacity,filter只有IE才能用,其他浏览器都支持opacity
2、改变透明度时候,不能通过类似offsetLeft的方法获取透明度值,因此需要单独创建变量
3、不要忘记将定时器赋值给timer
相关文章推荐
- Web布局连载——两栏固定布局(五)
- [div+css]晒晒最新制作专题推广页模板
- 异步流程控制:7 行代码学会 co 模块
- [译] React 入门
- 如何优雅处理前端异常?
- 设计更快的网页(三):字体和 CSS 调整
- 纯CSS制作的新闻网站中的文章列表
- 10条影响CSS渲染速度的写法与使用建议第1/3页
- BS项目中的CSS架构_仅加载自己需要的CSS
- 很不错的 CSS Hack 又学了一招
- 发一个css比较清爽的写法
- CSS expression控制图片自动缩放效果代码[兼容 IE,Firefox]
- css布局网页水平居中常用方法
- CSS经典技巧十则第1/2页
- css 兼容性问题this.style.cursor=''hand''
- IE6不能正常解析CSS文件问题的解决方法及原因分析
- 欲练CSS ,必先解决IE的一些细节分析
- CSS文字截取功能实现代码
- 支持IE6 IE7 Firefox 的纯CSS的下拉菜单