jQuery 借助插件Lavalamp实现导航条动态美化效果


Posted in Javascript onSeptember 27, 2013

借助 插件 Lavalamp实现导航条动态显示效果, 以前用animate来实现,效果不是很好

<script src="js/jquery-2.0.0.min.js" type="text/javascript"></script> 
<script src="js/jquery.easing.min.js" type="text/javascript"></script> 
<script src="js/jquery.lavalamp.js" type="text/javascript"></script> 
<script type="text/javascript"> 
$(function() { 
$(".nav").lavaLamp({ 
fx: "backout", 
speed: 1100, 
mouseover:function(event, menuItem){alert();} 
}); 
}); </script> 
<style> 
.nav { 
width:650px; 
height:100px; 
float:left; 
position: relative; 
} 
.nav li { 
width:auto; 
min-width:40px; 
line-height:100px; 
padding:0 15px; 
margin:0 10px 0 0; 
color:#000; 
font-size:14px; 
text-align:center; 
float:left; 
} 
.nav li.back { 
background: #86bf40; 
-moz-border-radius: 5px; 
-webkit-border-radius: 5px; 
line-height: 2; 
width: 40px; 
height: 100px; /*--?--*/ 
z-index: 1; /*--?--*/ 
position: absolute; /*--?--*/ 
margin-top: 0px; 
margin-left:5px; 
} 
.nav li a { 
color: #000; 
z-index: 2; /*--?--*/ 
font-variant: small-caps; 
text-decoration: none; 
position: relative; /*--?--*/ 
margin: auto 10px; 
} 
</style> 
</head> 
<body> 
<!-- header --> 
<div class="headerbox"> 
<div class="header"> <a href="http://www.uuspeed.com/" class="logo"><img src="images/logo.png" alt="优速云" /></a> 
<ul class="nav"> 
<li class="current"><a href="#">首 页</a></li> 
<li class="1"><a href="#">个人版</a></li> 
<li class="2"><a href="#">中小版</a></li> 
<li class="3"><a href="#">企业版</a></li> 
<li class="4"><a href="#">服务与价格</a></li> 
<li class="5"><a href="#">关于我们</a></li> 
</a> 
</ul> 
<div class="login"> <a href="" class="icon_login">登 录</a> <a href="" class="icon_login">注 册</a> </div> 
</div> 
</div> 

</body> 
</html>

//// ------lavalamp.js文件修改--------------
(function($) { 
$.fn.lavaLamp = function(o) { 
o = $.extend({ fx: "linear", speed: 500, click: function(){} }, o || {}); 
return this.each(function() { 
var me = $(this), 
noop = function(el){ 
}, 
$back = $('<li class="back"><div class="left"></div></li>').appendTo(me), 
$li = $("li", this), 
curr = $("li.current", this)[0] || $($li[0]).addClass("current")[0]; 

$li.not(".back").hover(function() { move(this);}); 

$(".nav li:eq(0) a").css("color","#FFF"); 
function setCurr(el) {alert(el.offsetWidth); 
$back.css({ "left": el.offsetLeft+"px", "width": el.offsetWidth+"px" }); 
curr = el; 
}; 
function move(el) { 
$back.each(function() { 
$.dequeue(this, "fx"); } 
).animate({ 
width: el.offsetWidth-40, 
left: el.offsetLeft 
}, o.speed, o.fx,function(){ 
var a0=$(".nav li:eq(0) a"); 
var a1=$(".nav li:eq(1) a"); 
var a2=$(".nav li:eq(2) a"); 
var a3=$(".nav li:eq(3) a"); 
var a4=$(".nav li:eq(4) a"); 
var a5=$(".nav li:eq(5) a"); 
if(el.offsetLeft==0){ 
$(".nav li:eq(0) a").css("color","#FFF"); 
a1.css("color","#000"); 
a2.css("color","#000"); 
a3.css("color","#000"); 
a4.css("color","#000"); 
a5.css("color","#000"); 
} 
if(el.offsetLeft==92){ 
$(".nav li:eq(1) a").css("color","#FFF"); 
a0.css("color","#000"); 
a2.css("color","#000"); 
a3.css("color","#000"); 
a4.css("color","#000"); 
a5.css("color","#000"); 
} 
if(el.offsetLeft==194){ 
$(".nav li:eq(2) a").css("color","#FFF"); 
a1.css("color","#000"); 
a0.css("color","#000"); 
a3.css("color","#000"); 
a4.css("color","#000"); 
a5.css("color","#000"); 
} 
if(el.offsetLeft==296){ 
$(".nav li:eq(3) a").css("color","#FFF"); 
a1.css("color","#000"); 
a2.css("color","#000"); 
a0.css("color","#000"); 
a4.css("color","#000"); 
a5.css("color","#000"); 
} 
if(el.offsetLeft==398){ 
$(".nav li:eq(4) a").css("color","#FFF"); 
a1.css("color","#000"); 
a2.css("color","#000"); 
a3.css("color","#000"); 
a0.css("color","#000"); 
a5.css("color","#000"); 
} 
if(el.offsetLeft==528){ 
$(".nav li:eq(5) a").css("color","#FFF"); 
a1.css("color","#000"); 
a2.css("color","#000"); 
a3.css("color","#000"); 
a4.css("color","#000"); 
a0.css("color","#000"); 
} 
}); 
}; 

}); 
}; 
})(jQuery);

效果见http://www.uuspeed.com/
Javascript 相关文章推荐
Mootools 1.2教程 事件处理
Sep 15 Javascript
jQuery封装的获取Url中的Get参数示例
Nov 26 Javascript
JavaScript定时器和优化的取消定时器方法
Jul 03 Javascript
详解JavaScript的另类写法
Apr 11 Javascript
跨域资源共享 CORS 详解
Apr 26 Javascript
JS图片预加载插件详解
Jun 21 Javascript
基于jQuery的表单填充实例
Aug 22 jQuery
浅析从vue源码看观察者模式
Jan 29 Javascript
基于jQuery实现Ajax验证用户名是否可用实例
Mar 25 jQuery
Vue实现回到顶部和底部动画效果
Jul 31 Javascript
jQuery实现的图片点击放大缩小功能案例
Jan 02 jQuery
Vue+abp微信扫码登录的实现代码示例
Jan 06 Javascript
jquery $.each 和for怎么跳出循环终止本次循环
Sep 27 #Javascript
jquery ajax 调用失败的原因示例介绍
Sep 27 #Javascript
写得不错的jquery table鼠标经过变色代码
Sep 27 #Javascript
模拟jQuery中的ready方法及实现按需加载css,js实例代码
Sep 27 #Javascript
jquery ready函数、css函数及text()使用示例
Sep 27 #Javascript
javascript full screen 全屏显示页面元素的方法
Sep 27 #Javascript
实现动画效果核心方式的js代码
Sep 27 #Javascript
You might like
基于mysql的论坛(5)
2006/10/09 PHP
PHP5常用函数列表(分享)
2013/06/07 PHP
浅析php中抽象类和接口的概念以及区别
2013/06/27 PHP
简单实用的网站PHP缓存类实例
2014/07/18 PHP
php使用mysqli向数据库添加数据的方法
2015/03/20 PHP
php显示页码分页类的封装
2017/06/08 PHP
PHP排序算法之希尔排序(Shell Sort)实例分析
2018/04/20 PHP
Laravel 集成微信用户登录和绑定的实现
2019/12/27 PHP
5 cool javascript apps
2007/03/24 Javascript
JavaScrip实现PHP print_r的数功能(三种方法)
2013/11/12 Javascript
js showModalDialog 弹出对话框的简单实例(子窗体)
2014/01/07 Javascript
使用pjax实现无刷新更改页面url
2015/02/05 Javascript
javascript中in运算符用法分析
2015/04/28 Javascript
AngularJS中的Directive自定义一个表格
2016/01/25 Javascript
vue.js打包之后可能会遇到的坑!
2018/06/03 Javascript
Javascript的this详解
2019/03/23 Javascript
vue配置文件实现代理v2版本的方法
2019/06/21 Javascript
JS回调函数 callback的理解与使用案例分析
2019/09/09 Javascript
node.js中process进程的概念和child_process子进程模块的使用方法示例
2020/02/11 Javascript
JS实现进度条动态加载特效
2020/03/25 Javascript
python django集成cas验证系统
2014/07/14 Python
Python简单连接MongoDB数据库的方法
2016/03/15 Python
Django使用详解:ORM 的反向查找(related_name)
2018/05/30 Python
python 调用有道api接口的方法
2019/01/03 Python
HTML5移动开发图片压缩上传功能
2016/11/09 HTML / CSS
html5 乒乓球(碰撞检测)实例二
2013/07/25 HTML / CSS
贝玲妃英国官网:Benefit英国
2018/02/03 全球购物
alice McCALL官网:澳大利亚时尚品牌
2020/11/16 全球购物
30岁生日感言
2014/01/25 职场文书
股东协议书范本
2014/04/14 职场文书
2015年小学数学教研组工作总结
2015/05/21 职场文书
心灵点滴观后感
2015/06/02 职场文书
工商行政处罚决定书
2015/06/24 职场文书
教你解决往mysql数据库中存入汉字报错的方法
2021/05/06 MySQL
你真的了解PHP中的引用符号(&)吗
2021/05/12 PHP
Python中np.random.randint()参数详解及用法实例
2022/09/23 Python