jQuery----左侧导航栏面板切换实现
页面运行结果:

点击曹操 点击刘备 点击孙权 原图
需求说明:原图如上所示,点击一方诸侯的时候,显示该诸侯手下猛将,其他诸侯手下猛将隐藏
页面结构:

实现思路:
①给大的li注册鼠标点击事件
当鼠标点击时候,获取当前li的ul下的所有的li,调用元素的show()方法。注意,该方法中可以加参数(数组),控制元素显示的快慢 $(this).children( "ul" ).find( "li" ).show(500);
获取当前li的所有的兄弟li:$(this).siblings( "li" );
获取兄弟li下的ul:$(this).siblings( "li" ).children( "ul" );
获取兄弟li下ul中的所有的li;$(this).siblings( "li" ).children( "ul" ).find( "li" );
设置上述其他的li隐藏:$(this).siblings( "li" ).children( "ul" ).find( "li" ).hide(500);
代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>导航栏项目切换</title> <style type="text/css">
*{
padding: 0px;
margin: 0px;
} #nav_box{
width: 100px;
/* 高度不设置的时候盒子根据内容伸缩 */
}
ul{
list-style: none;
} .nav_head li{
background-color: gray;
color: white;
text-align: center;
font-size: 20px;
border: 1px solid black;
cursor: pointer;
}
.nav_head li ul li{
border: 0.5px solid black;
font-size: 14px;
background-color: lightgray;
color: black;
border-collapse: separate;
display: none;
}
</style> <script src="js/jquery-1.12.2.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
$(function(){
//给盒子中的各个导航项注册点击事件
$(".nav_head>li").click(function(){
$(".nav_head>li").children("ul").find("li").hide(300);
$(this).children("ul").find("li").show(300);
}); });
</script>
</head>
<body>
<div id="nav_box">
<ul class="nav_head">
<li>曹操
<ul>
<li>张辽</li>
<li>张郃</li>
<li>夏侯惇</li>
<li>夏侯渊</li>
<li>许褚</li>
<li>典韦</li>
<li>曹仁</li>
<li>曹洪</li>
<li>徐晃</li>
</ul>
</li> <li>刘备
<ul>
<li>关羽</li>
<li>张飞</li>
<li>赵云</li>
<li>马超</li>
<li>黄忠</li>
<li>魏延</li>
</ul>
</li> <li>孙权
<ul>
<li>甘宁</li>
<li>太史慈</li>
<li>程普</li>
<li>周瑜</li>
<li>韩当</li>
<li>周泰</li>
<li>蒋钦</li>
<li>祖茂</li>
<li>黄盖</li>
</ul>
</li>
</ul>
</div>
</body>
</html>
jQuery----左侧导航栏面板切换实现的更多相关文章
- 简单的jquery左侧导航栏和页面选中
这里是要实现导航的左侧并选中的,此功能需引用jquery 左侧导航: <div class="box"> <ul class="menu"&g ...
- 简单的jquery左侧导航栏和页面选中效果
这里是要实现导航的左侧并选中的,此功能需引用jquery 效果: 左侧导航 <div class="box"> <ul class="menu" ...
- jQuery Mobile 导航栏
jQuery Mobile 导航栏 导航栏由一组水平排列的链接构成,通常位于页眉或页脚内部. 默认地,导航栏中的链接会自动转换为按钮(无需 data-role="button"). ...
- ElementUI 复杂顶部和左侧导航栏实现
描述:如图 项目路径如下图所示: 代码实现: 首先在store.js中添加两个状态: import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vue ...
- 导航栏图标切换:click事件,hover事件
最近再做一个基于angular6的项目,导航栏需求:1.hover切换图标 2.click切换图标 先用jquery实现功能,在在angular组件里面实现. demo如下: <!DOCTYPE ...
- 谈谈一些有趣的CSS题目(八)-- 纯CSS的导航栏Tab切换方案
开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...
- 基于jQuery左侧大图右侧小图切换代码
基于jQuery左侧大图右侧小图切换代码是一款带右侧缩略图选项卡的jQuery图片切换特效.效果图如下: 在线预览 源码下载 实现的代码. html代码: <div class=" ...
- jQuery实现导航栏
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- dedecms左侧导航栏不显示问题
dedecms左侧导航栏不显示问题 在做织梦项目时,经常会碰到后台左侧导航栏不显示的问题,如下所示: 这主要是由于文件权限不足造成的.有两种方法 第一种:把 /data 文件夹全部改成 777 权 ...
随机推荐
- MySQL的索引与优化
写在前面:索引对查询的速度有着至关重要的影响,理解索引也是进行数据库性能调优的起点.考虑如下情况,假设数据库中一个表有10^6条记录,DBMS的页面大小为4K,并存储100条记录.如果没有索引,查询将 ...
- java应用破解之破解 jeb mips 2.3.3
前言 jeb 的新版支持 mips的反编译 ,于是去官网申请一个试用版,试用版的限制还是比较多的,比如 使用时间验证,没法复制粘贴 等,于是想尝试看看能否破解,同时填了 java破解 这个坑. 修改版 ...
- lodop 代码注释
LODOP.SET_PRINT_PAGESIZE(1,1000,1500,""); /*1,纵向输出;1000,宽度;1500,高度*:单位为0.1毫米/LODOP.ADD_PR ...
- Pig store用法举例
store:将数据存储到HDFS等文件系统里 将数据保存到/data目录 store data into '/data'; 以逗号为分隔符 store data into '/data' usin ...
- CMake中添加Qt模块的合理方法
https://www.jianshu.com/p/7eeb6f79a275 转载自这里 用CMake来组织的工程中要用Qt首先要设置.找到Qt相关模块.主要是通过find_package这个CMak ...
- 从Azure上构建Windows应用程序映像
从Azure上构建windows应用程序映像同构建Linux应用程序映像总体流程比较类似,可以参考上图Linux映像的制作发布等流程,具体细节又有所差别. 具体步骤如下: 从Azure管理平台上申请W ...
- JAVA使用POI如何导出百万级别数据
用过POI的人都知道,在POI以前的版本中并不支持大数据量的处理,如果数据量过多还会常报OOM错误,这时候调整JVM的配置参数也不是一个好对策(注:jdk在32位系统中支持的内存不能超过2个G,而在6 ...
- ETL探索之旅
ETL(Ectract Transform Load) 抽取-转换-加载 ETL 商业软件: Informatica IBM DataStage Microsoft SSIS Oracle ODI ...
- Python初学者第二十二天 函数进阶(1)
22day 1.函数命名空间: 2.函数作用域的查找顺序:LEGB locals->enclosing function ->globals ->_builtins_ a.local ...
- SpringBoot部署流程
一. 项目介绍 a) 本项目为SpringBoot项目 b) 使用内置Tomcat容器 一. 操作步骤 a) 配置pom.xml文件,确定打包方式 b) 更改项目返 ...