JavaScript实现父子级菜单展开与收起
需积分: 14 139 浏览量
更新于2024-09-11
收藏 5KB TXT 举报
该资源提供了一段JavaScript代码和CSS样式,用于实现网页中的子父级菜单的上下展开和收起功能。用户通过点击父级菜单项来展开或收起对应的子菜单,使得导航更加交互友好。
JavaScript部分主要包含以下几个函数和逻辑:
1. `menuFix()` 函数:这个函数的主要作用是为页面中ID为`nav`的`<ul>`列表的所有`<li>`元素添加事件监听器。当鼠标悬停、按下、释放以及移出这些元素时,`sfhover`类将被添加或移除,从而改变元素的样式,实现鼠标悬停时的高亮效果。
2. `DoMenu(emid)` 函数:这个函数负责切换指定ID的菜单项的状态,根据当前类名("expanded" 或 "collapsed")切换展开与收起。同时,如果存在上一次打开的子菜单,会将其关闭。`LastLeftID`变量用于跟踪最后被展开的子菜单ID。
3. `GetMenuID()` 函数:此函数从URL中解析出菜单ID(如果存在),然后调用`DoMenu()`函数来自动展开相应的菜单。这通常用于页面加载时根据URL参数设置初始展开的菜单。
4. `GetMenuID()` 和 `menuFix()` 的执行顺序:在Firefox中,它们的执行顺序是关键,确保`GetMenuID()`在`menuFix()`之后执行,以正确地处理页面加载时的菜单状态。
CSS部分主要定义了菜单的样式:
- `body` 和 `#nav` 设置了基本的字体、字号、边距和列表样式。
- `#nav.yiji` 和 `#nav.yijia` 是针对一级菜单和二级菜单的样式,包括背景色、边框、浮动和行高。`:hover`, `:visited`, `:link` 伪类用于控制不同状态下的颜色和装饰。
- `#nav.yijiul` 和 `#nav.yijiulli` 是二级菜单的子列表样式,包括内边距、背景色和图片定位,用于在展开子菜单时显示适当的背景和缩进。
这段代码和样式可以用于创建一个响应式且具有良好交互体验的子父级菜单,适用于网页导航。用户可以通过点击父级菜单项,实现子菜单的展开和收起,使得网站内容的浏览更加方便。
2021-01-19 上传
2013-05-14 上传
2022-11-01 上传
2022-10-31 上传
2020-12-09 上传
点击了解资源详情
点击了解资源详情
2023-05-27 上传
jslj_923
- 粉丝: 0
- 资源: 1
最新资源
- 构建基于Django和Stripe的SaaS应用教程
- Symfony2框架打造的RESTful问答系统icare-server
- 蓝桥杯Python试题解析与答案题库
- Go语言实现NWA到WAV文件格式转换工具
- 基于Django的医患管理系统应用
- Jenkins工作流插件开发指南:支持Workflow Python模块
- Java红酒网站项目源码解析与系统开源介绍
- Underworld Exporter资产定义文件详解
- Java版Crash Bandicoot资源库:逆向工程与源码分享
- Spring Boot Starter 自动IP计数功能实现指南
- 我的世界牛顿物理学模组深入解析
- STM32单片机工程创建详解与模板应用
- GDG堪萨斯城代码实验室:离子与火力基地示例应用
- Android Capstone项目:实现Potlatch服务器与OAuth2.0认证
- Cbit类:简化计算封装与异步任务处理
- Java8兼容的FullContact API Java客户端库介绍