JavaScript实现点击出现子菜单效果


Posted in Javascript onFebruary 08, 2021

本文实例为大家分享了JavaScript实现点击出现子菜单的具体代码,供大家参考,具体内容如下

首先让我们看一下点击出现子菜单的效果如下图:

JavaScript实现点击出现子菜单效果

点击黄色的按钮,出现子菜单如下图:

JavaScript实现点击出现子菜单效果

让我们先看一下布局:

<div class="menu">
 <div class="sign" id="sign"></div>
 <div class="lis" id="lis">
 <ul>
 <li><a href="">one</a></li>
 <li><a href="">two</a></li>
 <li><a href="">three</a></li>
 <li><a href="">four</a></li>
 <li><a href="">five</a></li>
 </ul>
 </div>
</div>

CSS样式如下:

ul{
 padding-inline-start: 0px;
 }
 .menu{
 margin: 0 auto;
 background:#0DA795;
 height: 40px;
 width: 600px;
 }
 .sign{
 width: 30px;
 float: right;
 margin-right: 20px;
 margin-top: 8px;
 height: 25px;
 background: rgba(243,193,63,1.00);
 border-radius: 5px;
 position: relative;
 cursor: pointer;//把光标设置成手的形状
 }
 .lis{
 position: absolute;
 top:30px;
 display: none;
 }
 .lis ul li{
 list-style: none;
 width: 600px;
 line-height: 40px;
 font-size: 14px;
 text-align: center;
 border-bottom: 1px solid #565656;
 background:#EAEDD5;
 }.lis a{
 text-decoration: none;
 color: black;
 }
 .lis a:hover{
 color: #0da759;
}

CSS样式里面特别注意一下position(定位)。
Lis这个类里面的display:none;因为一开始子菜单是隐藏起来的。

JavaScript部分如下:

1、先获取它们的 ID,获取它们的ID之后,给第一个ID(sigin)通过OnClick添加一个点击事件;
2、在声明一个变量i,第二个ID赋值于i,在用一个分支语句if……else,如果i等于none;那么就执行第一条语句,如果不等于,就执行第二条语句。

这样就达到了我们想要的效果,见实现代码:

<script>
 var biaozhi=document.getElementById("sign");
 var li=document.getElementById("lis");
 biaozhi.onclick=function(){
 var i=li.style.display;
 if (i=="none"){
 li.style.display="block";//第一条语句
 }else{
 li.style.display="none";//第二条语句
 }
 }
</script>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript使用cookie
Feb 02 Javascript
使用JavaScript库还是自己写代码?
Jan 28 Javascript
JavaScript四种调用模式和this示例介绍
Jan 02 Javascript
jQuery的live()方法对hover事件的处理示例
Feb 27 Javascript
jquery中filter方法用法实例分析
Feb 06 Javascript
jQuery简单实现隐藏以及显示特效
Feb 26 Javascript
原生js实现自由拖拽弹窗代码demo
Jun 29 Javascript
jquery datatable服务端分页
Aug 31 Javascript
JavaScript实现垂直滚动条效果
Jan 18 Javascript
如何获取元素的最终background-color
Feb 06 Javascript
详谈Ajax请求中的async:false/true的作用(ajax 在外部调用问题)
Feb 10 Javascript
vue 实现移动端键盘搜索事件监听
Nov 06 Javascript
深入理解javascript中的this
Feb 08 #Javascript
Vue中使用wangeditor富文本编辑的问题
Feb 07 #Vue.js
vue使用lodop打印控件实现浏览器兼容打印的方法
Feb 07 #Vue.js
js基于canvas实现时钟组件
Feb 07 #Javascript
nestjs中异常过滤器Exceptionfilter的具体使用
Feb 07 #Javascript
js实现类选择器和name属性选择器的示例步骤
Feb 07 #Javascript
vue如何使用rem适配
Feb 06 #Vue.js
You might like
PHP 替换模板变量实现步骤
2009/08/24 PHP
php中mysql模块部分功能的简单封装
2011/09/30 PHP
浅析PHP关键词替换的类(避免重复替换,保留与还原原始链接)
2015/09/22 PHP
php微信开发之自定义菜单完整流程
2016/10/08 PHP
浅谈PHP之ThinkPHP框架使用详解
2020/07/21 PHP
js判断两个日期是否相等的方法
2013/09/10 Javascript
初识SmartJS - AOP三剑客
2014/06/08 Javascript
JavaScript不使用prototype和new实现继承机制
2014/12/29 Javascript
jQuery多级手风琴菜单实例讲解
2015/10/22 Javascript
AngularJS基础 ng-csp 指令详解
2016/08/01 Javascript
jQuery组件easyui对话框实现代码
2016/08/25 Javascript
Bootstrap.css与layDate日期选择样式起冲突的解决办法
2017/04/07 Javascript
vue实现一个移动端屏蔽滑动的遮罩层实例
2017/06/08 Javascript
如何检查一个对象是否为空
2019/04/11 Javascript
Vue学习之axios的使用方法实例分析
2020/01/06 Javascript
[01:01:01]完美世界DOTA2联赛循环赛 GXR vs FTD BO2第一场 10.29
2020/10/29 DOTA
python实现调用其他python脚本的方法
2014/10/05 Python
使用Python编写一个最基础的代码解释器的要点解析
2016/07/12 Python
Python命令行解析模块详解
2018/02/01 Python
python抓取京东小米8手机配置信息
2018/11/13 Python
Pandas删除数据的几种情况(小结)
2019/06/21 Python
通过PHP与Python代码对比的语法差异详解
2019/07/10 Python
PyCharm2019安装教程及其使用(图文教程)
2019/09/29 Python
python 多进程队列数据处理详解
2019/12/23 Python
详解Python设计模式之策略模式
2020/06/15 Python
Numpy中np.random.rand()和np.random.randn() 用法和区别详解
2020/10/23 Python
培训主管的岗位职责
2013/11/23 职场文书
本科生的职业生涯规划范文
2014/01/09 职场文书
股份合作协议书范本
2014/04/14 职场文书
感恩小明星事迹材料
2014/05/23 职场文书
校庆口号
2014/06/20 职场文书
个人对照检查剖析材料
2014/10/13 职场文书
致百米运动员广播稿5篇
2014/10/13 职场文书
2014年维修工作总结
2014/11/22 职场文书
2014年社区民政工作总结
2014/12/02 职场文书
新员工试用期工作总结2015
2015/05/28 职场文书