jQuery 导航美化插件 - Lavalamp

应该有人会对淘宝 UED Blog 的导航栏印象深刻。其实借助 jQuery 和 lavalamp 插件,我们也可以制作出一模一样效果的导航栏。动态鼠标跟随效果不但视觉上比纯 CSS 布局来得漂亮,导航指示能力也更为突出。

先看演示

然后我开始说怎么把它放到 Wordpress 模板里去。

Step 1. 引入 jQuery 框架:

<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js?ver=1.2.6'></script>

*注:Wordpress 自带有 jQuery 框架,但从 Google 引用的版本体积更小、载入速度更快。

Step 2. 引入 lavalamp 和 easing 效果插件:

<script type='text/javascript' src='http://ishawn.net/jQuery/lavalamp.min.js'></script>
<script type='text/javascript' src='http://ishawn.net/jQuery/easing.js'></script>

*注:访问插件作者的主页需翻墙,所以我把这两个文件暂存于 Shawn Blog。如果你打算长期使用,请将这两个文件下载并放到你自己的服务器上。

Step 3. 布置效果到元素:

<script type="text/javascript">
/* <![CDATA[ */
$(function(){$(".lavaLamp").lavaLamp({ fx: "backout", speed: 700 })});
/* ]]> */
</script>

*注:$(".lavaLamp") 对应的是导航栏的类,即此处假设你模板里的导航栏为 <ul class="lavaLamp">。speed 为滑动速度,单位是毫秒,数值越大效果越平滑,但"反应"也会跟着变慢。

Step 4. 写 CSS

.lavaLamp{
position: relative; /*--重要--*/
background-color: white;
margin: 10px 0; /*--对IE很重要--*/
}
.lavaLamp li{
float: left; /*--重要--*/
list-style: none;
}
.lavaLamp li.back{
border-bottom: 5px solid red;
width: 9px;
height: 20px; /*--较为重要--*/
z-index: 1; /*--较为重要--*/
position: absolute; /*--重要--*/
}
.lavaLamp li a{
color:#000;
z-index: 2; /*--较为重要;如修改,数值必须大过上一个 z-index --*/
font-variant:small-caps;
text-decoration:none;
position: relative; /*--重要--*/
margin: auto 10px;
}

*注:仍然假设你的导航栏为 <ul class="lavaLamp">,其中标注"重要"的条目是绝对不能去掉的,而"较为重要"的则不建议去掉但可根据需求修改。

以上四步便是布局动态导航栏的全部内容,心里有谱之后你就可以开动了。最后感谢作者带来这么轻便实用的 jQuery 插件,压缩版本体积仅为 700 字节左右,使用后也不会拖慢你 Blog 的载入速度。

Tag(s): , ,
  • QQ书签
  • Del.icio.us
  • 百度收藏
  • Google
  • 饭否
  • FriendFeed
Shawn Published@5:42 / 2008-11-27 / Trackback / Skip
39 Comments Contributed by Visitors
  1. rebuttonleehow / 8:12@2008-11-27 1
    leehow

    天?不会是我吧。

  2. rebuttonleehow / 8:23@2008-11-27 2
    leehow

    比较可爱的效果,是适用与置顶的导航?感恩节快乐!

  3. rebuttonk2max / 8:36@2008-11-27 3
    k2max

    好看好看,收着,以备不时之需 ....

  4. rebuttonk2max / 8:37@2008-11-27 4
    k2max

    怎么回事 ...
    老出错,怎么..

  5. rebuttonniechen / 8:50@2008-11-27 5
    niechen

    效果挺好,就是演示页面在IE页面下是变形,显示的不正常的

  6. rebutton火星基地 / 8:58@2008-11-27 6
    火星基地

    我曾经很喜欢这样的导航栏,收集了很多。不过后来还是没用,懒阿我。 :cry:

  7. rebuttonxiaorsz / 10:32@2008-11-27 7
    xiaorsz

    :lol: 不错不错,很强大!等下试试!!

  8. rebutton煎鱼 / 10:40@2008-11-27 8
    煎鱼

    我只有顶了

  9. rebuttonElton Disney / 10:52@2008-11-27 9
    Elton Disney

    啊,又是jQuery啊~~
    看不懂啊~~
    我要学jQuery啊~

  10. rebuttonElton Disney / 10:53@2008-11-27 10
    Elton Disney

    呃,看不懂,什么时候学了jQuery再说

  11. rebuttonSivan / 10:57@2008-11-27 11
    Sivan

    :smile: 收藏,不过目前我的导航貌似还用不上。

  12. rebutton老时 / 10:58@2008-11-27 12
    老时

    21世纪,啥最贵?人才!

  13. rebuttonJor / 11:25@2008-11-27 13
    Jor

    感恩节快乐~ 不错的文章,先收藏了。

  14. rebutton浮黑 / 12:30@2008-11-27 14
    浮黑

    昨天一直上不了你的博客,症状跟撞墙很像……

  15. rebuttoniColor / 13:09@2008-11-27 15
    iColor

    效果真的有点可爱的感觉,,感觉我那个theme好像有些不适用...

  16. rebutton花果山寨 / 13:26@2008-11-27 16
    花果山寨

    效果真不错!收藏起来先!

  17. rebuttonShawn / 15:31@2008-11-27 17
    Shawn

    @niechen: 重新写了 css,现在和 IE 兼容了
    @k2max: 上午用了 Hot Friends,应该是某项设置引起了错误。

  18. rebuttonShawn / 15:36@2008-11-27 18
    Shawn

    @浮黑: 昨天上午是服务器问题,不过下午就好了。

  19. rebuttonsofish / 15:52@2008-11-27 19
    sofish

    ohho...今天没看GR,竟然没发现你更新了。这个效果,自己也用过,不过,不是我自己喜欢的,哈哈...

  20. rebuttonTina / 16:10@2008-11-27 20
    Tina

    呀呀 就是leehow那里用的效果么~

  21. rebuttonShawn / 16:11@2008-11-27 21
    Shawn

    @Tina: 哈哈,差不多是的。

  22. rebutton任平生 / 17:22@2008-11-27 22
    任平生

    效果很不错哦

  23. rebuttonk2max / 17:50@2008-11-27 23
    k2max

    不会出错了吧 ...

  24. rebuttonShawn / 18:49@2008-11-27 24
    Shawn

    @Elton Disney: 太不好意思了,今天评论出错,被拦截下来好多东西。。。。

  25. rebuttonElton Disney / 19:05@2008-11-27 25
    Elton Disney

    呃~~我就觉得怪了,怎么一直说hotfriend插件错误呢~
    哎~你歧视我啊

  26. rebuttonShawn / 19:07@2008-11-27 26
    Shawn

    @Elton Disney: 我就是昨天用了那个插件,结果不知道哪儿出错了,今天发现了才改回来。我没歧视你,是你点儿背,刚好遇上了,哈哈

  27. rebuttonfqch / 21:24@2008-11-27 27
    fqch

    强~但还没想好应用在哪里呢~导航的话会不会位置不够

  28. rebuttonShawn / 21:29@2008-11-27 28
    Shawn

    @fqch: 横向导航应该没问题。调整一下 padding 就可以了。

  29. rebuttonaunsen / 22:08@2008-11-27 29
    aunsen

    这效果够炫,我喜欢! :eek: :eek: :eek:

  30. rebuttonAlan / 0:35@2008-11-28 30
    Alan

    先收藏吧 :D

  31. rebuttonLOKE / 18:29@2008-11-28 31
    LOKE

    哇塞!加精! :eek:

  32. rebuttonRDEN / 21:52@2008-11-28 32
    RDEN

    这样的效果不错,其实有一些建站素材网站都有这样的素材。以前曾经见过类似的!

  33. rebuttonYacca / 9:46@2008-11-30 33
    Yacca

    乖乖升级到了google版本的jquery...

  34. rebuttonhaitai / 16:01@2008-11-30 34
    haitai

    好像和ui-tabs-navi有点冲突,会自动回到第一个li上面。

  35. rebuttonShawn / 16:02@2008-11-30 35
    Shawn

    @haitai: 我个人认为,如果不是太过复杂的 Tab 应用,无需 ui-tabs。

  36. rebuttonhaitai / 16:12@2008-11-30 36
    haitai

    @Shawn: 应用ui-tabs不是因为复杂吧,只是它能很大限度地节省空间。

  37. rebuttonShawn / 16:14@2008-11-30 37
    Shawn

    @haitai: 我不是这个意思,我的意思是说,如果不是很复杂的 Tab 框架,无需 UI-tabs 这个插件,自己写一个就行了。

  38. rebutton小墨 / 15:59@2008-12-02 38
    小墨

    @leehow: 感觉跟你博客导航差不多。。你的怎么实现的额

  39. rebuttonRDEN / 14:13@2009-01-15 39
    RDEN

    求助!我用了这个方法,但是IE怎么有问题啊?就是下边的那条移动的粗线,没有和对应的项目对齐!但是火狐上表现很好~
    help me !

  40. rebuttonShawn / 14:20@2009-01-15 40
    Shawn

    @RDEN: 你好,演示部分在 IE 内是可以正常显示的。出现这个问题一般是 CSS 的原因,所以我建议你参考一下演示的 CSS 写法。

  41. rebuttonRDEN / 15:44@2009-01-15 41
    RDEN

    @Shawn 搞定!谢谢~

  42. rebuttonzdavy / 16:35@2009-02-13 42
    zdavy

    请问这个怎么改成您站右边菜单这样 竖向的,并且MOUSEOVER 激活的

  43. rebuttonHK / 17:40@2009-03-17 43
    HK

    有了这个东西后,就更好看了,很受用!

  44. rebuttonAlex / 22:47@2009-04-01 44
    Alex

    其实我很早前就看到这个文章,最近打算给自己的主题加入这个功能,再翻出来看看。。

  45. rebuttonlgbfg / 9:48@2009-04-20 45
    lgbfg

    这个不错~

  46. rebuttonhamilton / 14:34@2009-04-23 46
    hamilton

    IE6下完全不能用... :lol:

  47. rebuttonbolo / 14:09@2009-06-07 47
    bolo

    这种导航风格现在很多人使用了

  48. rebuttonshelhon / 15:44@2010-03-16 48
    shelhon

    在li里添加了一些连接,点击后进入相应的页面导航总是停留在第一li那里,请问该如何识别,让它停留在对应的连接上?请教请教。。。

Leave Comments Here...

必填

必填&保密

随您

支持Ctrl+Enter快捷提交

  • 已部署"白忙活" Anti-Spam 系统,猪肉 Spammer 请注意查看源代码链接处。
  • 本站不会泄露您的邮件地址,敬请放心。
  • 支持常用 HTML 代码调用,插入 PHP 代码需注意:< = &lt;> = &gt;
  • 仅当某人针对您的评论做出回应时,您才会收到由本站发出的通知信件。
  • 如您希望以相同方式通知某位网友,请点击 Reply 按钮,或自行输入 @对方名字:
  • 鼠标移至评论列表中的 @someone: 区域即可自动显示 someone 的评论内容。

Shawn Blog

Shawn的个人博客(Blog),分享Wordpress技巧和Firefox浏览器心得,关注Web 2.0应用发展,记录对虚拟主机的使用评价。