原理很简单.


涉及到知识点:

1、jquery的position注意这里是jquery的position,不是css的position

offset的概念

2、>的概念。

3、.ulh>li 的优先级要比直接在li上加 .selected的样式高。因为.ulh>li  是元素样式,位于优先级老2.


支持无限分级的菜单,兼容ie8+,chorm,firefox

支持无限的伸缩。支持url效果。图标和样式欢迎大家自行改造。欢迎大家使用。

代码如下

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
.ulh {
padding: 0;
list-style: none;
font-family: "Microsoft YaHei UI";
font-size: 14px;
position: relative;
}
.ulh >li {
float: left;
background-color: bisque;
border-collapse: collapse;
width: 200px;
box-sizing: border-box;
text-align: center;
height: 30px;
line-height: 28px;
border: 1px solid red;
}
.ulh >li>a {
cursor: pointer;
display: block;
}
.ulv {
padding: 0;
list-style: none;
font-family: "Microsoft YaHei UI";
font-size: 14px;
position: relative;
}
.ulv >li {
background-color: bisque;
border-collapse: collapse;
display: block;
width: 200px;
box-sizing: border-box;
height: 30px;
line-height: 28px;
border: 1px solid red;
}
.ulv >li a {
cursor: pointer;
display: block;
}
.selected {
background-color: #a1ffaa;
}
</style>
<script src="content/javascript/jquery-1.10.2.min.js"></script> <script>
$(document).ready(function () {
$("#maliang >li").show();
$("#maliang ul").hide(); $("#maliang li ").hover(function () {
var x = $(this).position();
var float1 = $(this).css("float");
if (float1.toUpperCase() == "LEFT") {
$(this).find(">ul").css({"position": "absolute", "left": x.left, 'top': x.top + 30});
}
else {
$(this).find(">ul").css({"position": "absolute", "left": x.left + 200, 'top': x.top});
}
$(this).find(">ul").slideDown(); $(this).addClass("selected");
}, function () {
$(this).find(">ul").slideUp();
$(this).removeClass("selected");
});
}) </script>
</head>
<body >
<ul class="ulh" id="maliang">
<li id="ol" style="position: relative">
<a href="http://www.baidu.com">新闻</a>
<ul class="ulv" >
<li><a href="">国内</a>
</li>
<li><a href="">国际</a></li>
<li><a href="">娱乐</a></li>
</ul>
</li>
<li id="keji"><a>科技</a>
<ul class="ulv" >
<li><a href="">互利网</a></li>
<li><a href="">软件</a></li>
<li><a href="">电子商务</a>
<ul class="ulv">
<li><a href="">1.1</a></li>
<li><a href="">1.2</a></li>
<li><a href="">1.3</a>
<ul class="ulv">
<li><a href="">1.1.1</a></li>
<li><a href="">1.2.1</a></li>
<li><a href="">1.3.1</a><ul class="ulv">
<li><a href="">1.1.1</a></li>
<li><a href="">1.2.1</a></li>
<li><a href="">1.3.1</a></li>
</ul></li>
</ul></li>
</ul>
</li>
</ul>
</li>
<li> <a>娱乐</a>
<ul class="ulv" >
<li><a href="">亚洲娱乐</a></li>
<li><a href="">欧美娱乐</a></li>
<li><a href="">全球娱乐资讯</a></li>
</ul>
</li> <li> <a href="">体育新闻</a></li> </ul>
</body>
</html>

jquery菜单插件的更多相关文章

  1. 35+个实用jQuery菜单插件

    应用jQuery菜单插件可以让浏览者在浏览你的网页时获得最好的动态导航.jQuery是一个轻量级.跨浏览器的JavaScript框架(库),效果非常给力,它强调并简化了JavaScript.CSS和H ...

  2. 《JQuery常用插件教程》系列分享专栏

    <JQuery常用插件教程>已整理成PDF文档,点击可直接下载至本地查阅https://www.webfalse.com/read/201719.html 文章 使用jquery插件实现图 ...

  3. 分享21个基于jquery菜单导航的效果

    jquery导航菜单插件制作jquery动画菜单熔岩灯菜单效果更新时间:02月15日 14:53:03 虾米精选-菜单导航-导航菜单 0浏览 / ★★★☆☆星级 / 未知软件大小/ jquery导航菜 ...

  4. jQuery Wheel 环形菜单插件5种效果演示

    很酷的菜单-jQuery Wheel 环形菜单插件5种效果演示在线预览 下载地址 实例代码 <div class="container"> <!-- Top Na ...

  5. 一款效果精致的 jQuery 多层滑出菜单插件

    想要以用户友好的方式呈现多级菜单是件不容易的事情,而且还要跨浏览器兼容就更难了.Multi-Level Push Menu 这款 jQuery 插件提供了呈现这种菜单的解决方案,能够让你无限制的展示菜 ...

  6. Smint – 用于单页网站制作的 jQuery 导航菜单插件

    Smint 是一款用于实现单页风格网站的 jQuery 导航插件,包含两部分:固定在页面顶部的精美导航条和能够在你点击的时候自动滚动到对应内容的菜单按钮.Smint 使用非常简单,只有一个参数用于设置 ...

  7. 网站开发常用jQuery插件总结(十)菜单插件superfish

    网站对于菜单的依赖其实并不是很大,我们完全可以不使用菜单来设计网站,显示网站内容.但是如果网站的分类太多,“也许”使用菜单作为网站导航可以使 用户 更方便的寻找内容.superfish插件就是用于实现 ...

  8. 【jQuery】smartMenu右键自定义上下文菜单插件(似web QQ)

    (前端用重点整理博客地址)链接地址:http://www.cnblogs.com/atree/archive/2011/06/30/jQuery-smartMenu-javascript.html 一 ...

  9. Jquery多级菜单插件Slimmenu使用说明

    Jquery多级菜单插件Slimmenu使用说明 现在扁平化设计逐渐的成为了趋势,不管是pc web,还是移动互联网的应用开发,都在研究和设计Flat ui, 这里有一篇文章说明扁平化的设计的一些想法 ...

随机推荐

  1. 11 Zabbix Item类型之Zabbix Calculated 计算型Item类型

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 11 Zabbix Item类型之Zabbix Calculated 计算型Item类型 计算类型 ...

  2. 自学Linux Shell9.2-基于Red Hat系统工具包存在两种方式之一:RPM包

    点击返回 自学Linux命令行与Shell脚本之路 9.2-基于Red Hat系统工具包存在两种方式之一:RPM包 本节主要介绍基于Red Had的系统(测试系统centos) 1. 工具包存在两种方 ...

  3. adb is down 的解决方法

    今天装完android Eclipse 之后 ,运行时报出这么个错误 : The connection to adb is down, and a severe error has occured.  ...

  4. 学习 Spring Boot:(二十九)Spring Boot Junit 单元测试

    前言 JUnit 是一个回归测试框架,被开发者用于实施对应用程序的单元测试,加快程序编制速度,同时提高编码的质量. JUnit 测试框架具有以下重要特性: 测试工具 测试套件 测试运行器 测试分类 了 ...

  5. luogu1169 棋盘制作 (单调栈)

    先预处理出来从每个位置 以0开始 往右交替最多能放多少格 然后就相当于对每一列做HISTOGRA #include<bits/stdc++.h> #define pa pair<in ...

  6. Hashtable 删除元素, 抛出异常 java.util.ConcurrentModificationException

    今天在对一个Hashtable对象进行 搜索 -> 删除 操作时遇到的一个问题,开始的使用我使用的是Hashtable的Iterator,然后直接执行: Hashtable.remove(key ...

  7. 关于使用IsapiRewrite重写,重定向的语句

    早上起床,发现之前的IsapiRewrite写法有改进的地方, 有几个废弃的网址可以使用IsapiRewrite的重定向,转到新的网址上来. 搞了有十分钟的时间,测试老是不重定向. 因为之前已经有一个 ...

  8. random模块(十九)

    1 ).random() 返回0<=n<1之间的随机实数n: 2 ).choice(seq) 从序列seq中返回随机的元素: 3 ).getrandbits(n) 以长整型形式返回n个随机 ...

  9. poj 3207(2-SAT+SCC)

    传送门:Problem 3207 https://www.cnblogs.com/violet-acmer/p/9769406.html 难点: 题意理解. 题意: 平面上有一个圆,圆上有n个点(分别 ...

  10. 二进制手动部署kubernetes 1.10.10

    转载于:https://www.jevic.cn/2018/09/23/kuberentes-1.10.10/?tdsourcetag=s_pcqq_aiomsg#heapster 通读一遍在实际操作 ...