js进阶 13-9/10 jquery如何实现三级列表
js进阶 13-9/10 jquery如何实现三级列表
一、总结
一句话总结:用的是定位,父标签相对定位,子标签就可以绝对定位了,绝对定位的孩子还是可以设置绝对定位。用toggle设置子菜单显示和隐藏。用的是jquery的hover方法。
1、鼠标滑过的时候最常设置的属性是什么?
透明度 opacity
2、如何让一级菜单下的二级菜单显示而三级菜单不显示?
.menu>li:hover>ul{display:none}
直接选择孩子,而不要选择子辈
而且注意这里是li:hover,也就是被鼠标悬浮的那个li的孩子ul(下级菜单)
3、如何实现被鼠标悬浮的那个li的孩子ul(下级菜单)显示出来?
.menu>li:hover>ul{display:none}
而且注意这里是li:hover
也可以直接用jquery的hover方法
47 $('.menu li').hover(function(){
48 $(this).children('ul').toggle()
49 })
4、如何滑动二级菜单让三级菜单显示出来?
注意这里用到了多个li:hover
21 .menu>li:hover>ul>li:hover>ul{display: block;}*/
5、元素的显示和隐藏切换用什么?
toggle
6、三级菜单的本质是什么?
元素的显示和隐藏 + 元素的定位
二、jquery如何实现三级列表
1、相关知识
三级导航
案例描述:用两种方法实现一个简单的三级导航栏。
案例重点:该案例非本身并不复杂,重点在于对思路的理解。
2、代码
1 <!DOCTYPE html> 2 <html lang="en"> 3 <style> 4 </style> 5 <head> 6 <meta charset="UTF-8"> 7 <title>演示文档</title> 8 <script type="text/javascript" src="jquery-3.1.1.min.js"></script> 9 <style type="text/css"> 10 *{padding: 0;margin:0;} 11 a{color: #fff;text-decoration: none;} 12 .menu{background: orange;height: 30px;line-height: 30px;} 13 .menu li{list-style-type: none;float: left; position: relative;} 14 .menu li a{display: block;height: 30px;float: left;margin-left: 10px} 15 .menu li ul{position: absolute;display: none;} 16 .first{top: 30px} 17 .first li a{width: 100px;background: rgba(100,50,30,0.6)} 18 .first li a:hover{width: 100px;background: rgba(100,50,30,0.8)} 19 .first_2{left: 100px} 20 /* .menu>li:hover>ul{display: block;} 21 .menu>li:hover>ul>li:hover>ul{display: block;}*/ 22 23 </style> 24 </head> 25 <body> 26 <ul class="menu"> 27 <li><a href="#">菜单一</a> 28 <ul class="first"> 29 <li><a href="#">菜单一</a></li> 30 <li><a href="#">菜单二</a></li> 31 <li><a href="#">菜单三</a></li> 32 <li><a href="#">菜单四<span>▶</span></a> 33 <ul class="first_2"> 34 <li><a href="#">菜单一</a></li> 35 <li><a href="#">菜单二</a></li> 36 <li><a href="#">菜单三</a></li> 37 <li><a href="#">菜单四</a></li> 38 </ul> 39 </li> 40 </ul> 41 </li> 42 <li><a href="#">菜单二</a></li> 43 <li><a href="#">菜单三</a></li> 44 <li><a href="#">菜单四</a></li> 45 </ul> 46 <script> 47 $('.menu li').hover(function(){ 48 $(this).children('ul').toggle() 49 }) 50 </script> 51 </body> 52 </html>
版权申明:欢迎转载,但请注明出处
一些博文中有一些参考内容因时间久远找不到来源了没有注明,如果侵权请联系我删除。
在校每年国奖、每年专业第一,加拿大留学,先后工作于华东师范大学和香港教育大学。
2024-10-30:27岁,宅加太忙,特此在网上找女朋友,坐标上海,非诚勿扰,vx:fan404006308
AI交流资料群:753014672