js实现带缓动动画的导航栏效果
2017-01-16 11:12
871 查看
话不多说,请看实例代码:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <style type="text/css"> ul,li { padding: 0; margin: 0; } li { list-style: none; } #box{ height: 48px; width: 900px; background-color: #459DF5; margin: 50px auto; position: relative; } #caution { width: 150px; height: 48px; background-color: #4B92D8; position: absolute; top: 0; left: 0; } #list { position: absolute; } #list li { width: 150px; height: 48px; float: left; color: #fff; font: 500 20px/48px "微软雅黑"; text-align: center; cursor: pointer; } </style> <script type="text/javascript"> window.onload = function(){ //获取ul ID var oUl = document.getElementById("list"); // 获取span ID var caution = document.getElementById("caution"); //获取ul 所有孩子 var aLi = oUl.children; //定时器管理 var timer = null; //缓动 var leader = 0; var target = 0; //停留 var current = 0; for(var i = 0;i<aLi.length;i++){ //鼠标移动 aLi[i].onmouseover = function(){ //关闭定时器 clearInterval(timer); //获取当前的left值 target = this.offsetLeft; //开启定时器 timer = setInterval(autoCaution,20); } //鼠标点击 aLi[i].onmousedown = function(){ //清楚所有高亮的文字 for(var j = 0;j<aLi.length;j++){ aLi[j].style.color = "#fff"; } //当前点击栏变为红色 this.style.color = "#ccc"; //提示框 current = this.offsetLeft; caution.style.left = current+"px"; } } //鼠标离开 oUl.onmouseout = function(){ //关闭定时器 clearInterval(timer); target = current; timer = setInterval(autoCaution,20); } //缓动动画 function autoCaution(){ leader = leader +(target - leader) /10; caution.style.left = leader+"px"; } } </script> </head> <body> <div id="box"> <span id="caution"></span> <ul id="list"> <li>首页</li> <li>公司简介</li> <li>企业文化</li> <li>招贤纳士</li> <li>企业论坛</li> </ul> </div> </body> </html>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!
您可能感兴趣的文章:
相关文章推荐
- 不使用JS,使用CSS3 target 以及 动画效果实现,点击一下弹出,并且保持弹出状态,然后再点击一下弹回的导航栏(或者可以叫做按钮)
- 使用缓动动画函数实现导航栏效果
- window.requestAnimationFrame与Tween.js配合使用实现动画缓动效果
- 图片的左右移动,js动画效果实现代码
- 用js实现的动画效果
- JS 实现导航栏悬停效果(续)
- JS实现超炫网页烟花动画效果的方法
- JS 实现回到页面TOP的动画效果
- JS 实现导航栏悬停效果(续)
- 纯CSS实现菜单、导航栏的3D翻转动画效果
- JS 实现导航栏悬停效果(续2)
- js实现绿白相间竖向网页百叶窗动画切换效果
- 仿谷歌主页js动画效果实现代码
- js实现div整块向上移动的动画效果
- JS+CSS实现Google首页的动画效果
- 用js实现类似jquery里的animate动画效果
- 用js实现动画效果核心方式
- JS 实现导航栏悬停效果
- 利用JS和css3实现动画效果替代js的时间事件
- Unity引擎模拟实现HTML5 animation 动画效果,取代NGUI的Tweener缓动