使用无序列表ul实现多级菜单
首先要求后端传来的菜单数据必须包含:
id---菜单id
pid---父菜单id
整体思想:首先渲染出整个菜单(不包含父子关系),再用js将各标签分组、挂载到父结点上。
这里给各个菜单增加自定义属性pid,如下(jsp代码):
<ul class="navbar" style="width: 100%"><c:forEach var="menu" items="${menus}"><li id="${menu.menuId}" data-pid="${menu.pId}"><a href="${menu.url}" target="center" onclick="showMenu(this);return false;">${menu.menuName}<img src="./img/open.png" alt=""></a></li></c:forEach></ul>
其中,data-pid(data-xxx-xxx格式)为目前使用较多的自定义属性定义方式
在js中的代码为:
//html加载完毕后执行
window.onload = function () {var list = document.getElementsByTagName("li");for (var i = 0; i < list.length; i++) {if (list[i].dataset.pid === "") {//这里是顶级菜单} else if (list[i].dataset.pid !== "") {//这里是子结点//取出pidvar pid = list[i].dataset.pid;var pele = document.getElementById(pid);//寻找父菜单if (document.getElementById("u" + pid) == null) {//不存在则创建var ul = document.createElement("ul");ul.setAttribute("id", "u" + pid);ul.appendChild(list[i]);pele.appendChild(ul);} else {//存在则添加var ul = document.getElementById("u" + pid);ul.appendChild(list[i]);}}}}
使用无序列表ul实现多级菜单相关推荐
- 有序列表ol与无序列表ul用法
有序列表<ol>与无序列表ul用法 其中<li> 标签定义列表项目,<li> 标签可用在有序列表 (<ol>) 和无序列表 (<ul>) 中 ...
- html生成无序列表,CSS无序列表创建的标准菜单效果代码
本文实例讲述了CSS无序列表创建的标准菜单效果代码.分享给大家供大家参考.具体如下: 这是一款用LI无序列表创建的标准CSS菜单,这是国外一个网站的CSS制作教程,这里重新整理了一下,去除了广告代码, ...
- web无序列表去掉点_无序列表ul标记的type属性值可以为-智慧树Web前端开发技术(山东联盟)章节答案...
Web前端开发技术(山东联盟):无序列表ul标记的type属性值可以为[多选题] A:square B:circle C:disc D:line Web前端开发技术(山东联盟)章节测试答案: squa ...
- html列表黑色圆点是有序还是,网页HTML有序列表ol和无序列表ul
html语言中有序列表和无序列表有什么区别? 第一,有序列表的标签是 ,有start属性 ,最大序号为999 无序列表的标签是,无start属性 第二,的显示方式是列表前面有序号(序号形式由type属 ...
- html怎样让列表向下移动,Html无序列表ul控件实现行上下移动.
new document // 创建一个ul var ul = document.createElement("ul"); ul.id = "oList"; / ...
- phpul 无序列表,PHP – 简单嵌套无序列表(UL)数组
我在stackoverflow上看到了这个嵌套的UL数组问题的一些变体,但我认为我的比其他更简单.我正在寻找一个简单的数组循环,允许无限量的主题(父母)与无限量的项目(儿童),如: Topic Ite ...
- 使用HTML5 nav标签和无序列表ul标签实现导航栏
<!doctype html> <html> <dead> <meta charset="UTF-8"> <style typ ...
- HTML的无序(ul)、有序(ol)、定义(dl)列表标签
*列表标签 列表类型 标记符号 备注 无序列表 <ul>-</ul> 常用 菜单列表 <menu>-</menu> 不常用 目录列表 <dir&g ...
- 无序列表如何做一个导航条?html,如何使用无序列表制作导航菜单.docx
第一步:建立一个无序列表 我们先建立一个无序列表,来建立菜单的结构.代码是: 首页 产品介绍 服务介绍 技术支持 立刻购买 联系我们 第二步:隐藏li的默认样式 因为看起来不是很好看,菜单通常都不需要 ...
- html生成无序列表,HTML的ul无序列表
无序列表 ul{width:250px;height:150px;background-color:gray;border:1px solid white;border-radius:10px;} u ...
最新文章
- 从大厂“出逃”,今天又有三位程序员联手敲钟:市值 40 亿
- 爱鲜蜂签约神策数据 让精细化运营落地企业
- Opencv3编程入门学习笔记(三)之访问图像像素的三种方法
- Hibernate READ_ONLY CacheConcurrencyStrategy如何工作
- 使用WEUI uploader上传图片
- 全国第一条5G步行街开街;罗永浩回应直播有多赚钱:没那么夸张;Windows Terminal 1.4发布|极客头条
- 强命名防止dll被篡改
- 学习记录1——vissim4.3安装和vissim4.3时间修改工具使用
- 分享180个动态模板PPT模板,总有一款适合你
- 用C#.NET编写软件注册机
- CNNIC:第35次中国互联网络发展状况统计报告
- 光伏发电与计算机控制,独立太阳能光伏发电系统的控制设计与实现
- 计算机配件价格上涨,显卡涨价风声再起 PC配件涨价什么时候是个头
- linux转置的命令,转置文件(awk)
- ipv6 无状态地址管理
- 计算机与师范数学的联系论文,数学师范生毕业论文
- Java - JIT即时编译器
- java多态的多种表现形式
- ***没有规则可以创建“XXX”需要的目标“XXX”问题的解决方案
- JVM内存配置参数、GC工作原理及Minor GC、FullGC