原理很简单.


涉及到知识点:

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. Android 第三课 构建简单的用户界面

    构建简单的用户界面 上一课下一课 该课程教你 创建线性布局 添加文本框 添加字符串资源 添加按钮 使输入框宽度充满整个屏幕 你也应该阅读 布局 Android的图形用户界面通过 View 和 View ...

  2. java date总结

    Java 8 中 Date与LocalDateTime.LocalDate.LocalTime互转   Java 8中 java.util.Date 类新增了两个方法,分别是from(Instant ...

  3. unity开源移动库iTween使用完整Demo

    public Vector3[] paths; // Use this for initialization void Start () { paths = ] { , , ), , , -) }; ...

  4. 快速幂&快速乘法

    尽管快速幂与快速乘法好像扯不上什么关系,但是东西不是很多,就一起整理到这里吧 快速幂思想就是将ax看作x个a相乘,用now记录当前答案,然后将指数每次除以2,然后将当前答案平方,如果x的2进制最后一位 ...

  5. javascript面向对象精要第二章函数整理精要

  6. plink, vcftool计算等位基因频率(allele frequency,vcf)

    计算等位基因频率有两种方式,第一种用vcftool计算: /path/to/vcftools --vcf file.vcf --freq --chr 1 --out filefreq 很简单的一个命令 ...

  7. NCBI上查看SNP位点在哪个基因座上(locus)

    首先,进入NCBI的主页网站:https://www.ncbi.nlm.nih.gov/variation/view/ 进入后,在下图红色框框位置输入目的SNP,比如rs608139 输完后,出现如下 ...

  8. 'RegAsm.exe' 不是内部或外部命令

    我想从cmd运行regasm.exe.它在c:\windows \Microsoft.net\framework\2.057 中可用 我喜欢这个c:\ regasm.exe 它给予 regasm无法识 ...

  9. (lower_bound)find the nth digit hdu1597

    find the nth digit Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Other ...

  10. 利用bootstrap-datetimepicker实日历插件

    由于项目中需要获取一个时间值,手动输入的话比较Low,这里引用了bootstrap-datetimepicker模块来实现. 1.首先,下载该模块并引用.(官网:http://www.bootcss. ...