jQuery实现三级联动菜单(鼠标悬停联动)
效果图:

代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>jQuery实现三级联动菜单(鼠标悬停联动)</title>
<script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>
<style>
li {
list-style: none;
line-height: 36px;
border: 1px solid #ddd;
width: 200px;
padding-left: 10px;
margin: -1px;
} li.active {
background: #3c96ff;
} .level2, .level3 {
float: left;
height: 0;
margin-left: 161px;
margin-top: -36px;
display: none;
}
</style>
</head>
<body>
<ul class="level1">
<li>
<span>湖北省</span>
<ul class="level2">
<li>
<span>武汉市</span>
<ul class="level3">
<li><a href="#">江汉区</a></li>
<li><a href="#">硚口区</a></li>
<li><a href="#">汉阳区</a></li>
<li><a href="#">武昌区</a></li>
<li><a href="#">青山区</a></li>
<li><a href="#">洪山区</a></li>
<li><a href="#">蔡甸区</a></li>
<li><a href="#">江夏区</a></li>
<li><a href="#">黄陂区</a></li>
<li><a href="#">新洲区</a></li>
<li><a href="#">东西湖区</a></li>
<li><a href="#">汉南区</a></li>
</ul>
</li>
<li>
<span>鄂州市</span>
<ul class="level3">
<li><a href="#">鄂城区</a></li>
<li><a href="#">华容区</a></li>
<li><a href="#">梁子湖区</a></li>
</ul>
</li>
<li>
<span>孝感市</span>
<ul class="level3">
<li><a href="#">孝南区</a></li>
<li><a href="#">汉川市</a></li>
<li><a href="#">应城市</a></li>
<li><a href="#">安陆市</a></li>
<li><a href="#">云梦县</a></li>
<li><a href="#">孝昌县</a></li>
<li><a href="#">大悟县</a></li>
</ul>
</li>
</ul>
</li>
<li>
<span>广东省</span>
<ul class="level2">
<li>
<span>广州市</span>
<ul class="level3">
<li><a href="#">越秀区</a></li>
<li><a href="#">荔湾区</a></li>
<li><a href="#">海珠区</a></li>
<li><a href="#">天河区</a></li>
<li><a href="#">白云区</a></li>
<li><a href="#">黄浦区</a></li>
<li><a href="#">番禺区</a></li>
<li><a href="#">花都区</a></li>
<li><a href="#">南沙区</a></li>
<li><a href="#">增城区</a></li>
<li><a href="#">从化区</a></li>
</ul>
</li>
<li>
<span>深圳市</span>
<ul class="level3">
<li><a href="#">福田区</a></li>
<li><a href="#">罗湖区</a></li>
<li><a href="#">南山区</a></li>
<li><a href="#">盐田区</a></li>
<li><a href="#">宝安区</a></li>
<li><a href="#">龙岗区</a></li>
<li><a href="#">龙华区</a></li>
<li><a href="#">坪山区</a></li>
<li><a href="#">光明区</a></li>
</ul>
</li>
<li>
<span>佛山市</span>
<ul class="level3">
<li><a href="#">禅城区</a></li>
<li><a href="#">南海区</a></li>
<li><a href="#">顺德区</a></li>
<li><a href="#">三水区</a></li>
<li><a href="#">高明区</a></li>
</ul>
</li>
</ul>
</li> </ul>
<script>
$(document).on("mouseover", ".level1 li", function () {
$(this).addClass("active").children(".level2").show();
}).on("mouseout", ".level1 li", function () {
$(this).removeClass("active").children(".level2").hide();
}); $(document).on("mouseover", ".level2 li", function () {
$(this).addClass("active").children(".level3").show();
}).on("mouseout", ".level1 li", function () {
$(this).removeClass("active").children(".level3").hide();
}); $(document).on("mouseover", ".level2 li", function () {
$(this).addClass("active");
}).on("mouseout", ".level1 li", function () {
$(this).removeClass("active");
});
</script>
</body>
</html>
jQuery实现三级联动菜单(鼠标悬停联动)的更多相关文章
- 扩充 jQuery EasyUI Datagrid 数据行鼠标悬停/离开事件(onMouseOver/onMouseOut)
客户需求: jQuery EasyUI Datagrid 用户列表鼠标悬停/离开数据行时显示人员头像(onMouseOver/onMouseOut) 如图所示,Datagrid 鼠标悬停/离开数据行时 ...
- 扩展 jQuery EasyUI Datagrid 数据行鼠标悬停/离开事件(onMouseOver/onMouseOut)
客户需求: jQuery EasyUI Datagrid 用户列表鼠标悬停/离开数据行时显示人员头像(onMouseOver/onMouseOut) 如图所示,Datagrid 鼠标悬停/离开数据行时 ...
- 超酷JQuery动画分页按钮,鼠标悬停滑动展开
1.效果及功能说明 animate动画分页按钮制作鼠标悬停分页按钮上滑动展开分页按钮,鼠标离开后分页按钮收缩 2.实现原理 主要是靠动画方法,来让原本的箭头图像的长度发生变长,正好可以融入下标题的文字 ...
- phpcms v9联动菜单的调用方法及get_linkage函数简单过程
{get_linkage($r['areaid'],1,' >> ',1)} 复制代码 当然这个 $r 也不是绝对的.要看你的loop 是如何写的. {loop $data $n $r} ...
- PHPCMS联动菜单的调用函数get_linkage方法详解
v9联动菜单调用方法[注意此为内容页调用方法 {get_linkage($areaid,1,' >> ',1)} 显示效果: 湖北省 >> 武汉市 >> 汉阳区 [ ...
- phpcms v9中模板标签使用及联动菜单
{template "content","header"} 调用根目录下phpcms\template\content\header文件 {charset} 字 ...
- phpcms v9联动菜单的调用方法_详解get_linkage函数
phpcms v9联动菜单调用方法[此为内容页调用方法]: {get_linkage($areaid,1,' >> ',1)} 显示效果: phpcms吧 >> 模板下载 &g ...
- 20款jquery下拉导航菜单特效代码分享
20款jquery下拉导航菜单特效代码分享 jquery仿京东商城左侧分类导航下拉菜单代码 jQuery企业网站下拉导航菜单代码 jQuery css3黑色的多级导航菜单下拉列表代码 jquery响应 ...
- 基于jQuery的AJAX实现三级联动菜单
最近学习jQuery,所以就写了一个关于中国省市县/区的三级联动菜单,权当相互学习,相互促进,特此记录. 下面是嵌套js的html文件: <!DOCTYPE html> <html ...
随机推荐
- 关于this与e.target区别以及data-*属性
1 this与event.target 在编写事件函数时可以传入一个event参数,even参数可以使用一个target属性如even.target用以调用,其作用是指向返回事件的目标节点(触发该事件 ...
- react随笔
对React children 的深入理解 https://www.jianshu.com/p/d1975493b5ea [react]利用prop-types第三方库对组件的props中的变 ...
- div的edit和drag(点击div可编辑、删除、拖动)
1.可编辑: <div id="move" contentEditable="true">可编辑</div> 设置contentEdit ...
- SEM和SEO的区别?
https://www.zhihu.com/question/20307058 SEM在营销中扮演的角色:进攻 搜索引擎营销,即SEM(Search Engine Marketing),是基于搜索引擎 ...
- MongoDB的使用学习之(五)Spring集成MongoDB以及简单的CRUD
这篇文章不错:Spring Data - MongoDB 教程 (1.0.0.M1)http://miller-cn.iteye.com/blog/1258859 1.介绍 之前在很多地方一直见到这个 ...
- WithEvents的一些用法
WithEvents的一些用法说明:1.WithEvents是指定一个或多个已声明成员变量引用可引发事件的类的实例.2.当某个变量是使用 WithEvents 定义时,可以用声明方式指定某个方法使用 ...
- hdu4731 Minimum palindrome (找规律)
这道题找下规律,3个字母或者以上的时候就用abcabcabc....循环即可. 一个字母时,就是aaaaa.....; 当只有2个字母时!s[1][]=a"; s[2][]="ab ...
- python3-继承和多态
在OOP程序设计中,当我们定义一个class的时候,可以从某个现有的class继承,新的class称为子类(Subclass),而被继承的class称为基类.父类或超类(Base class.Supe ...
- jquery.fancybox.js 解决只加载一次的问题
问题描述:有一块图片区域,页面第一次加载的时候jQuery(".fancybox-button").fancybox({}); 使用ajax上传成功后显示在图片区域,再次jQuer ...
- Vue this.$nextTick原理
虽然 Vue.js 通常鼓励开发人员沿着“数据驱动”的方式思考,避免直接接触 DOM,但是有时我们确实要这么做.比如一个新闻滚动的列表项.如果在这里需要操作dom, 应该是等待 Vue 完成更新 DO ...