Html+Js简单实现列表标签菜单下拉

 效果图:

        关闭:

                

        打开: 

                 

 代码:

<ul class="menu">
    <li  p="0" onclick="change(this)">公告管理</li>
        <ul style="display:none;">
            <li><a href="#" target="box">已发布公告</a></li>
            <li><a href="#" target="box">写公告</a></li>
	    </ul>
    <li p="0" onclick="change(this)">信息发布</li>
	    <ul style="display:none;">
	        <li><a href="#" target="box">接种信息</a></li>
		    <li><a href="#" target="box">检测信息</a></li>
	    </ul>
</ul>

<script>
	function change(x){
		if(x.getAttribute("p") == "0"){
			x.setAttribute("p","1");
			$(x).next().show();
		}
		else{
			x.setAttribute("p","0");
			$(x).next().hide();
		}
	}
</script>

------------更新--------------

上面的代码在项目里之前是能用的,一点没改今天打开项目却报错了。。。

把上面的代码单独放在vscode的新页面里,也是可以使用的。。。

没有办法,用jQuery重新写了一下,又能用了,放一下jQuery的代码吧。。。

<ul class="menu">
		<li  p="0" class="xiala">公告管理</li>
		<ul style="display:none">
		    <li><a href="#" target="box">已发布公告</a></li>
		    <li><a href="#" target="box">写公告</a></li>
	    </ul>
		<li p="0" class="xiala">信息发布</li>
		<ul style="display:none">
			<li><a href="#" target="box">接种信息</a></li>
			<li><a href="#" target="box">检测信息</a></li>
		</ul>
		<li><a href="#" target="box">住户管理</a></li>
		<li><a href="#" target="box">个人信息管理</a></li>
</ul>

<script>
$(function(){	
	$(".xiala").click(function(){
		if(this.getAttribute("p") == "0"){
			this.setAttribute("p","1");
			$(this).next().show();
		}
		else{
			this.setAttribute("p","0");
			$(this).next().hide();
		}
	})

}) 
	
</script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用HTML和CSS来实现导航栏下拉菜单。以下是一个简单的例子: HTML代码: ``` <nav> <ul> <li><a href="#">主页</a></li> <li><a href="#">关于我们</a> <ul> <li><a href="#">公司简介</a></li> <li><a href="#">团队介绍</a></li> </ul> </li> <li><a href="#">服务</a> <ul> <li><a href="#">网站设计</a></li> <li><a href="#">移动应用开发</a></li> <li><a href="#">社交媒体营销</a></li> </ul> </li> <li><a href="#">联系我们</a></li> </ul> </nav> ``` CSS代码: ``` nav ul { list-style: none; margin: 0; padding: 0; } nav li { display: inline-block; position: relative; padding: 0 10px; } nav ul ul { display: none; position: absolute; top: 100%; } nav ul li:hover > ul { display: inherit; } nav ul ul li { position: relative; top: -60px; border-bottom: 1px solid #ccc; float: none; display: list-item; width: 200px; text-align: left; } nav ul ul ul li { position: relative; top: -40px; left: 200px; } nav a { display: block; color: #000; font-size: 16px; text-decoration: none; } nav ul ul li a { color: #999; font-size: 14px; } nav ul ul li a:hover { color: #fff; background-color: #000; } ``` 在这个例子中,我们使用了HTML的无序列表和链接来创建导航栏。使用CSS,我们对列表项进行样式设置,并将下拉菜单的位置设置为绝对定位。使用:hover伪类选择器,在鼠标悬停在列表项上时显示下拉菜单。在下拉菜单中,我们使用了相对定位来调整菜单的位置,并使用了:hover伪类选择器来设置鼠标悬停时的样式。 ### 回答2: 要使用HTML实现导航栏下拉菜单,可以使用HTML标签结构和CSS样式来创建。 首先,在HTML中创建一个导航栏的ul元素(无序列表),每个导航项使用li元素(列表项)包裹。在需要有下拉菜单的导航项上,添加一个额外的ul元素,用于显示下拉菜单的选项。 接下来,使用CSS样式来控制导航栏和下拉菜单的显示和布局。可以使用CSS选择器来选择导航栏的ul元素和下拉菜单的ul元素。通过设置display属性为"none"来隐藏下拉菜单,在需要显示时设置为"display: block"。 使用CSS的定位属性(如position和top)来控制下拉菜单的位置,通常是将其相对于父级导航栏进行定位,使用top属性调整位置到合适的地方。还可以使用CSS的其他属性,如background-color和font-size来设置下拉菜单的样式。 最后,可以使用JavaScript来添加交互效果,例如当鼠标移动到导航栏的导航项上时,显示下拉菜单;当鼠标离开导航栏时,隐藏下拉菜单。 总结起来,使用HTML结构、CSS样式和可能的JavaScript来实现导航栏下拉菜单的显示和交互效果。 ### 回答3: 要使用HTML实现导航栏下拉菜单,可以使用HTML、CSS和JavaScript的组合来完成。下面是实现的基本步骤: 1. 使用HTML创建导航栏的基本结构,通常使用无序列表 (ul) 和列表项 (li) 元素来构建菜单项。 2. 使用CSS定义导航栏的样式,可以设置背景颜色、文本样式等。 3. 在需要添加下拉菜单菜单项中,添加一个子级无序列表 (ul) 元素,并为其设置样式。 4. 使用CSS设置下拉菜单的样式,例如将其隐藏 (display: none),设置宽度、背景颜色等。 5. 使用JavaScript选择菜单项,并增加事件处理程序,以当鼠标悬停或点击菜单项时显示下拉菜单。可以使用事件监听器 (Event Listener) 或直接内联 JavaScript 代码来实现。当事件触发时,使用 CSS 修改下拉菜单的显示属性 (display: block) 以显示菜单。 6. 当鼠标移开菜单项或点击其他地方时,使用 JavaScript 的事件处理程序隐藏下拉菜单。可以通过 CSS 修改菜单的显示属性 (display: none) 实现。 通过以上步骤,就可以实现一个基本的导航栏下拉菜单。使用 HTML 来创建结构,CSS 来定义样式,JavaScript 来增加交互效果,可以使导航栏下拉菜单更加动态和用户友好。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值