如何用JS制作简单的伸缩二级菜单,代码是什么
Admin 2022-07-01 群英技术资讯 261 次浏览
JavaScript实现伸缩二级菜单的具体代码,供大家参考,具体内容如下
伸缩二级菜单:
案例说明:效果图如下,一次只能打开一个,打开后,+ 号变 - 。
HTML 代码
<!--伸拉列表--> <style> li { /*取消li小圆点*/ list-style: none; } li span { /*给 span 标签设置背景图片(开头的小加号小减号,no-repeat不循环,初始位置 0 0)*/ background: url(add.png) no-repeat left center; padding-left: 20px; } /*起始样式*/ li ul{ height: 0; /*溢出隐藏*/ overflow: hidden; /*添加过渡效果*/ transition: all 0.5s; } /*展开样式*/ .open{ background-image: url(minus.png); } .open+ul{ height: 70px; } </style> <ul class="tree"> <li><span class="open">考勤管理</span> <ul> <li>日常考勤</li> <li>请假申请</li> <li>加班出差</li> </ul> </li> <li><span>信息中心</span> <ul> <li>日常考勤</li> <li>请假申请</li> <li>加班出差</li> </ul> </li> <li><span>协同办公</span> <ul> <li>日常考勤</li> <li>请假申请</li> <li>加班出差</li> </ul> </li> </ul> <script src="mJS.js"></script>
JavaScript 代码
// 伸拉列表 // 实现思路: var spans = document.querySelectorAll(".tree span"); for (var i = 0; i < spans.length; i++) { spans[i].onclick = function () { // console.log(this); // 查找要修改的元素 span 自己 // 修改,删除或添加 class -> open // 判断自己身上是不是有 open,如果有,删除! // this ->指向触发事件的元素本身 if (this.className == "open") { // 如果有,删除! this.className = ""; } else { // 如果没有,则添加 ,删除其他已经打开的! //找到打开(open属性的li) var openSpan = document.querySelector(".tree .open") if (openSpan !== null) { // 如果集合不为空,删除他们的 open 属性 openSpan.className = ""; } // 给自己设置 open 属性 this.className = "open"; } } }
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
jquery.md5有什么用jQuery md5加密插件jQuery.md5.js用法有时候我们想在js里面使用加密,jQuery就提供了这样的插件,用法十分简单使用方法:<div class="jb51code">rush:Js;">$.(
这篇文章主要介绍了JavaScript中展开运算符及应用的实例代码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
最近vue项目要做数据实时刷新,数据较大,会出现卡死情况,所以本文主要介绍了页面实时刷新长连接,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
目录前言关于边框关于控制点本章小结前言在上一章中我们已经搞定了下层画布,也就是能够对物体进行绘制了,现在就可以开始搞搞上层交互了。不过在和画布产生交互之前,我们还要做一件事情,就是让物体支持边框和控制点的绘制,亦即物体被选中时的状态,就像下面这样:这样一来如果要对物体进行一些操作,那就变成了对上图中的红色和蓝色边框进行
这篇文章主要为大家介绍了Vue编译器AST抽象语法树源码分析详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008