乱翻乱教- jQuery 制作N级导航菜单

突然发现将近一个月没写东东了(拜托就是一个月好伐)。飞鱼:额,最近在做月子= =
jQuery 制作仿DNF首页导航菜单效果

jQuery 制作仿DNF首页导航菜单效果

作者:飞鱼原创
飞鱼: 偶然发现这个东东很实用,就手把手写了个。
DNF首页的那只导航,似乎纯手写的。我这次要写的是用jquery来制作,制作代码非常极其简单,看了就知道怎么做(老鸟可以绕过哈,谁让咱们都是菜鸟 = =)

最终效果图

支持N级导航(添加子导航无需另外添加代码)。

html代码

首先当然是html啦,代码如下,没有什么技术含量,

<div class="menu" >
    <ul>
      <li>
        <a href="#">游戏介绍</a>
        <ul>
          <li><a href="#">升级体验</a></li>
          <li class="sub">
            <a href="#">游戏2</a>
            <ul>
              <li><a href="#">天赋系统</a></li>
              <li><a href="#">升级体验</a></li>
            </ul>
          </li>
          <li><a href="#">故事背景</a></li>
          <li><a href="#">职业介绍</a></li>
        </ul>
      </li>
      <li><a href="#">天赋系统</a></li>
    </ul>
  </div>

css代码

因为是仿dnf官方首页导航,所以样式也多少参考了一下它的样式,(图片我也给扣过来了 嘎嘎)

.menu{
  height:27px;
  float:left;
  background:#1d1d1d url(http://ossweb-img.qq.com/images/dnf/web200812/box_bg1.gif) repeat;
  border:2px solid #000;
}
.menu ul{
    border:1px solid #3f3f37;
    height:25px;
    float:left;
}
.menu li{
  float:left;
  position:relative;
  text-align:center;
  width:70px;
  background:url(http://ossweb-img.qq.com/images/dnf/web200812/img.gif) no-repeat -480px 9px;
}
.menu li .sub{
  background:url(http://ossweb-img.qq.com/images/dnf/web200812/img.gif) no-repeat -420px 9px;
}
.menu li a{
  color:#b29056;
  display:block;
  height:25px;
  line-height:25px;
}
  .menu li a:hover{
    color:#fff;
    text-decoration:none;
  }
  .menu li ul{
    position:absolute;
    top:25px;
    left:-1px;
    display:none;
    width:68px;
    height:auto;
    float:none;
    border-bottom:none;
    background:#1d1d1d url(http://ossweb-img.qq.com/images/dnf/web200812/box_bg1.gif) repeat;
  }
  .menu li ul a{
    display:block;
    height:25px;
    line-height:25px;
  }
    .menu li ul a:hover{
      background:#070707 url(http://ossweb-img.qq.com/images/dnf/web200812/r_linkbg.gif) repeat;
    }
  .menu li ul li{
    position:relative;
    width:68px;
    border-bottom:1px solid #3f3f37;
    background:none;
  }
  .menu li li ul{
    position:absolute;
    top:-1px;
    left:68px;
  }

js代码

这个代码,可以说是相当滴简单,只用了一只语法(.hover)。
说明一下代码的用处细节:(菜鸟专用,老鸟请跨过去 = =)

$(document).ready(function(){
  $('.menu li').hover(  //给menu 下的所有li 添加 hover 动作
    function () {   //鼠标在li 上时让 li 下的ul 显示出来
      $(this).children('ul:first').css('display', 'block');
    },
    function () {  //鼠标在离开li 上时让 li 下的ul 隐藏掉
      $(this).children('ul:first').css('display', 'none');
    }
  );
});

上面代码中我用:first 来只取第一个来提高效率(不知道我这样做对不对,感觉上应该是对的 – -)。

PS:代码演示,因为最近用的都不是自个儿的电脑,FTP上不去,就委曲下自己 尝试一下呢,效果还是不错的。

PS2:可以在这基础上增加其他功能:比如鼠标离开后,过半秒中导航才消失,这个需要用到setTimeout 函数来解决。有空我写个。^_^

哟?不错哎 订阅飞鱼的RSS Feeds 回去慢慢看^_^

您可能还对这些日志感兴趣

该文章已经被摸了499次。 共有 14 条评论

  1. 1. 托尔·银月 2009年7月11日 at 19:41

    沙发,看代码我晕~~~

    回复

    飞鱼 Reply:

    嘎嘎,吃晕车药

    回复

  2. 2. 南柯一梦 2009年7月11日 at 20:22

    js代码竟然这么少,有点小吃惊~

    回复

    飞鱼 Reply:

    简单吧 嘎嘎,这个只是一个最简单的,可以添加其他动态效果

    回复

  3. 3. 南柯一梦 2009年7月11日 at 20:33

    这么快竟然就回复了?看来在qq上啊,我有5天没怎么上qq了

    回复

    飞鱼 Reply:

    碰巧 在 嘎嘎

    回复

    南柯一梦 Reply:

    哈哈,看来邮件通知还是挺有用的~马上就能知道你回复

    回复

  4. 4. 葉子 2009年7月11日 at 22:24

    干走,不客气!!

    回复

    飞鱼 Reply:

    BS, 高级版的还在做呢··

    回复

    葉子 Reply:

    BS,分享了还想bs我啥,想怎么滴。高级版??啥叫高级版

    回复

  5. 5. 99读书人 2009年7月12日 at 7:45

    您好,想与贵博客建立友情链接。
    贵博客的链接已做好,希望能通过您的审核!
    网站名称:99读书人
    网站地址:www.zan01.cn/

    回复

    飞鱼 Reply:

    不好意思呢,小站一般不加友情链接的呢。^_^

    回复

    葉子 Reply:

    yoyo,小师傅有人要了

    回复

  6. 6. seri 2010年6月12日 at 17:23

    不错啊,我是菜菜鸟啊 – -。

    回复

发表评论

评论仅支持“a、abbr、strong、em、blockquote、code”几个简单的标签

Who am I ?

飞鱼,男,浙江人士。
非专业前端、交互设计师。
目前在 企鹅村 通宵 打酱油

最新在啃

php和mysql web开发(原书第4版) javascript

新鲜的肉

最新评论

  • 小元: 啊!我会弄了!
  • 小元: 请问多窗口并显怎么设置?看了文章还是不会呢! “打开html页面,点击多窗口panel,然后从左侧目录中将css文件拖动到右侧panel就可以实现了。”...
  • vilppu: http://foxsp.com/t/125 这有下载,也有安装说明
  • James: 请问能否分享配色方案?
  • Aric: 代码快 来一份 谢谢楼主了 新年快乐

订阅-rss-永久链接

MT
备案号:浙ICP备09020026 号