利用JQuery实现顶部导航栏功能

今天给大家介绍一下,如何利用JQuery实现顶部导航栏功能。其实原理很简单就是利用css和JQuery样式选择器实现的。

下面举个例子具体介绍一下如何这些功能,案例如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>jQuery三级下拉列表导航菜单</title>

<script type="text/javascript" src="js/jquery-1.8.3.min.js"></script>

<style type="text/css">
*{margin: 0; padding: 0;}
body{ font-size: 12px; }
li{ list-style: none;}
ul.nav li{ width: 200px; text-align:center;}
ul.nav > li{ float: left; margin-right:10px;}
ul.nav li h3{height: 40px; line-height: 40px;}
ul.nav > li > h3{ background: #72a7ff;}
ul.nav > li > ul > li h3{ background: #ffd9d9;}
ul.nav > li h3:hover,.choice{ background: #ffc0c0!important;}
ul > li > ul{ display: none;}
ul > li.on > ul{ display: block;}
ul.nav li{ position: relative;}
ul.nav > li > ul > li ul{ position:  absolute; top: 0; right: -200px;}
ul.nav span.sub{ position: absolute; display: block; right:10px; top: 0; width: 10px; height: 40px; background: url(images/arrows.png) no-repeat center center;}
</style>

<script type="text/javascript">
    $(document).ready(function() {
        $("ul.nav li").hover(function(){
            $(this).addClass("on");

        },
        function(){
            $(this).removeClass("on");

        })
    });

    $(document).ready(function() {
        $("ul.nav li").hover(function(){
            $(this).parent("ul").siblings("h3").addClass("choice");

        },
        function(){
            $(this).parent("ul").siblings("h3").removeClass("choice");
        })
    });

    $(document).ready(function() {       
            if ($("ul.nav li").find("ul") .html()!="") {
                $("ul.nav li").parent("ul").siblings("h3").append("<span class='sub'></span>");                
            }
    });
</script>


</head>
<body>
<ul class="nav">
  <li><h3>我的网站</h3>
    <ul>
        <li><h3>2级分类</h3>
          <ul>
            <li><h3>3级分类</h3>
              <ul>
                <li><h3>4级分类</h3>
                  <ul>
                    <li><h3>5级分类</h3></li>
                    <li><h3>5级分类</h3></li>
                    <li><h3>5级分类</h3></li>
                    <li><h3>5级分类</h3></li>
                  </ul>
                </li>
                <li><h3>4级分类</h3></li>
                <li><h3>4级分类</h3></li>
                <li><h3>4级分类</h3></li>
              </ul>
            </li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
          </ul>
        </li>
        <li><h3>2级分类</h3>
          <ul>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
          </ul>
        </li>
        <li><h3>2级分类</h3>
          <ul>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
          </ul>
        </li>
        <li><h3>2级分类</h3>
          <ul>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
          </ul>
        </li>
    </ul>
  </li>
  <li><h3>我的网站</h3>
    <ul>
        <li><h3>2级分类</h3>
          <ul>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
          </ul>
        </li>
        <li><h3>2级分类</h3>
          <ul>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
          </ul>
        </li>
        <li><h3>2级分类</h3>
          <ul>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
          </ul>
        </li>
        <li><h3>2级分类</h3>
          <ul>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
          </ul>
        </li>
    </ul>
  </li>
  <li><h3>我的网站</h3>
    <ul>
        <li><h3>2级分类</h3>
          <ul>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
          </ul>
        </li>
        <li><h3>2级分类</h3>
          <ul>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
          </ul>
        </li>
        <li><h3>2级分类</h3>
          <ul>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
          </ul>
        </li>
        <li><h3>2级分类</h3>
          <ul>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
          </ul>
        </li>
    </ul>
  </li>
  <li><h3>我的网站</h3>
    <ul>
        <li><h3>2级分类</h3>
          <ul>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
          </ul>
        </li>
        <li><h3>2级分类</h3>
          <ul>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
          </ul>
        </li>
        <li><h3>2级分类</h3>
          <ul>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
          </ul>
        </li>
        <li><h3>2级分类</h3>
          <ul>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
            <li><h3>3级分类</h3></li>
          </ul>
        </li>
    </ul>
  </li>
</ul>
</body>
</html>

运行截图:

实现思路:

1.首先利用css将二级三级菜单隐藏起来。

2.然后利用Jquery实现对菜单的显示和隐藏。

如果对文章有什么疑义或者有啥问题都可以找我交流QQ:208017534 欢迎打扰!!!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏SIGAI学习与实践平台

【免费线上实践】动手训练模型系列:梯度消失

本模型实现对512*512图像的像素二分类问题;红色或蓝色的样本点(每个样本包含坐标(x,y)值)坐落在对应颜色的区域内则样本正确分类,反之分类错误。 loss...

10640
来自专栏算法channel

深度学习|卷积神经网络(CNN)介绍(前篇)

01 — 回顾 以上推送了神经网络相关的介绍性内容和相关的基础理论,包括: 神经网络的基本结构:输入层,隐含层,输出层; 批随机梯度下降算法(mini-batc...

55990
来自专栏深度学习与计算机视觉

TensorFlow 图像预处理(二) 图像翻转,图像色彩调整

图像翻转 tf.image.flip_up_down:上下翻转 tf.image.flip_left_right:左右翻转 tf.image.tra...

402100
来自专栏大数据挖掘DT机器学习

数据挖掘算法-Matlab实现:Logistic 回归

什么叫做回归呢?举个例子,我们现在有一些数据点,然后我们打算用一条直线来对这些点进行拟合(该曲线称为最佳拟合曲线),这个拟合过程就被称为回归。 利用Logis...

43660
来自专栏编程

梯度下降法及其Python实现

梯度下降法及其Python实现 基本介绍 梯度下降法(gradient descent),又名最速下降法(steepest descent)是求解无约束最优化问...

466100
来自专栏码洞

人工稚能之sklearn分类

分类算法和聚类比较类似,都是将输入数据赋予一个标签类别。区别是分类算法的分类是预先确定的,有明确含义的。而聚类的标签是从输入数据本身的分布中提取出来的一种抽象的...

8810
来自专栏大数据挖掘DT机器学习

深度学习CTPN算法的解读与tensorflow实现

作者github地址和tensorflow版本地址: 在公众号 datadw 里 回复 CTPN 即可获取。 本文将对CTPN这篇文章的思路做一个详细的介绍...

1K40
来自专栏CreateAMind

Faster R-CNN

Fast-RCNN基本实现端对端(除了proposal阶段外),下一步自然就是要把proposal阶段也用CNN实现(放到GPU上)。这就出现了Faster-R...

15720
来自专栏marsggbo

DeepLearning.ai学习笔记(四)卷积神经网络 -- week1 卷积神经网络基础知识介绍

一、计算机视觉 ? 如图示,之前课程中介绍的都是64* 64 3的图像,而一旦图像质量增加,例如变成1000 1000 * 3的时候那么此时的神经网络的计...

232100
来自专栏贾志刚-OpenCV学堂

OpenCV图像噪声与去噪函数方法对比使用介绍

图像去噪在二值图像分析、OCR识别预处理环节中十分重要,最常见的图像噪声都是因为在图像生成过程中因为模拟或者数字信号受到干扰而产生的,常见的噪声类型有如下:

90420

扫码关注云+社区

领取腾讯云代金券