利用JavaScript+CSS+DIV实现下拉菜单源代码

课堂作业:利用JavaScript+CSS+DIV实现下拉菜单


源代码


<!DOCTYPE html>
<html>

	<head>
		<meta charset="UTF-8">
		<title>菜单演示</title>
		<style type="text/css">
			#con {
				width: 800px;
				height: 400px;
				margin: 100px auto;
				background-color: yellow;
			}
			
			#con ul li {
				float: left;
				width: 150px;
				height: 30px;
				line-height: 30px;
				text-decoration: none;
				text-align: left;
			}
			
			#con a{
				text-decoration: none;
				color: #FFF;
				display: block;
				width: 150px;
				height: 30px;
				background: #666;
			}
			#con a:hover{
				background: pink;
			}
			#con ul ul{
				display: none
			}
			.header{
				text-align: center;
			}
			*{
				margin: 0;
				padding: 0;
				list-style: none;
				font-size:13px;
			}
		</style>
		
	</head>

	<body>
		<div id="con">
			<ul>
				<li id="li01">
					<a href="javascript:;" class="header">平面设计</a>
					<ul id="ul01">
						<li>
							<a href="javascript:;">&nbsp;&nbsp;CorelDRAW</a>
						</li>
						<li>
							<a href="javascript:;">&nbsp;&nbsp;Photoshop</a>
						</li>
						<li>
							<a href="javascript:;">&nbsp;&nbsp;Illustrator</a>
						</li>
						<li>
							<a href="javascript:;">&nbsp;&nbsp;Sketch</a>
						</li>
					</ul>
				</li>

				<li id="li02">
					<a href="javascript:;" class="header">网页设计</a>
					<ul id="ul02">
						<li>
							<a href="javascript:;">&nbsp;&nbsp;HTML基础</a>
						</li>
						<li>
							<a href="javascript:;">&nbsp;&nbsp;CSS层叠样式表</a>
						</li>
						<li>
							<a href="javascript:;">&nbsp;&nbsp;JavaScript</a>
						</li>
						<li>
							<a href="javascript:;">&nbsp;&nbsp;Dreamweaver</a>
						</li>
					</ul>
				</li>
				<li id="li03">
					<a href="javascript:;" class="header">影视动画</a>
					<ul id="ul03">
						<li>
							<a href="javascript:;">&nbsp;&nbsp;AF入门到精通</a>
						</li>
						<li>
							<a href="javascript:;">&nbsp;&nbsp;Premiere进阶</a>
						</li>
						<li>
							<a href="javascript:;">&nbsp;&nbsp;Edius基础到提高</a>
						</li>
						<li>
							<a href="javascript:;">&nbsp;&nbsp;ZBrush基础</a>
						</li>
					</ul>
				</li>
				<li id="li04">
					<a href="javascript:;" class="header">室内设计</a>
					<ul id="ul04">
						<li>
							<a href="javascript:;">&nbsp;&nbsp;3ds Max入门</a>
						</li>
						<li>
							<a href="javascript:;">&nbsp;&nbsp;别墅施工图现场</a>
						</li>
						<li>
							<a href="javascript:;">&nbsp;&nbsp;VR室内效果图基础</a>
						</li>
						<li>
							<a href="javascript:;">&nbsp;&nbsp;SU建模及3D渲染</a>
						</li>
					</ul>
				</li>
			</ul>
		</div>
	</body>

</html>

<script type="text/javascript">
			function myfn(param1,param2){
				var myli=document.getElementById(param1);
				var myul=document.getElementById(param2);
				myli.onmouseover=function(){
					myul.style.display='block';
				}
				myli.onmouseout=function(){
					myul.style.display='none';
				}
			}
			myfn('li01','ul01');
			myfn('li02','ul02');
			myfn('li03','ul03');
			myfn('li04','ul04');
		</script>

操作截图
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 下拉菜单是一种常见的网页菜单形式,可以通过JavaScriptCSS来制作。具体步骤如下: 1. HTML结构:在HTML中创建一个包含下拉菜单的容器,如下所示: ``` <div class="dropdown"> <button class="dropbtn">下拉菜单</button> <div class="dropdown-content"> <a href="#">菜单项1</a> <a href="#">菜单项2</a> <a href="#">菜单项3</a> </div> </div> ``` 其中,`dropdown`是整个下拉菜单的容器,`dropbtn`是触发下拉菜单的按钮,`dropdown-content`是下拉菜单的内容。 2. CSS样式:使用CSS样式来控制下拉菜单的外观和行为,如下所示: ``` /* 隐藏下拉菜单内容 */ .dropdown-content { display: none; position: absolute; z-index: 1; } /* 鼠标悬停时显示下拉菜单内容 */ .dropdown:hover .dropdown-content { display: block; } /* 下拉菜单按钮样式 */ .dropbtn { background-color: #4CAF50; color: white; padding: 12px; font-size: 16px; border: none; cursor: pointer; } /* 下拉菜单内容样式 */ .dropdown-content a { color: black; padding: 12px 16px; text-decoration: none; display: block; } /* 鼠标悬停时下拉菜单内容样式 */ .dropdown-content a:hover { background-color: #f1f1f1; } ``` 其中,`display: none`用于隐藏下拉菜单内容,`display: block`用于显示下拉菜单内容,`position: absolute`和`z-index: 1`用于控制下拉菜单内容的位置和层级,`hover`伪类用于控制鼠标悬停时下拉菜单的显示和隐藏。 3. JavaScript交互:使用JavaScript实现下拉菜单的交互效果,如下所示: ``` /* 获取下拉菜单按钮和内容 */ var dropdown = document.getElementsByClassName("dropdown"); var i; /* 遍历下拉菜单 */ for (i = ; i < dropdown.length; i++) { var dropdownBtn = dropdown[i].getElementsByClassName("dropbtn")[]; var dropdownContent = dropdown[i].getElementsByClassName("dropdown-content")[]; /* 点击按钮时显示或隐藏下拉菜单内容 */ dropdownBtn.addEventListener("click", function() { dropdownContent.classList.toggle("show"); }); /* 点击其他地方时隐藏下拉菜单内容 */ window.addEventListener("click", function(event) { if (!event.target.matches('.dropbtn')) { var dropdowns = document.getElementsByClassName("dropdown-content"); var j; for (j = ; j < dropdowns.length; j++) { var openDropdown = dropdowns[j]; if (openDropdown.classList.contains('show')) { openDropdown.classList.remove('show'); } } } }); } ``` 其中,`getElementsByClassName`用于获取下拉菜单按钮和内容,`classList.toggle`用于切换下拉菜单内容的显示和隐藏,`matches`用于判断点击的元素是否为下拉菜单按钮,`contains`用于判断下拉菜单内容是否已经显示。通过以上步骤,就可以使用JavaScriptCSS制作出一个简单的下拉菜单。 ### 回答2: 下拉菜单是Web设计中最常用的交互元素之一。下拉菜单可以添加到网站的主导航栏,用于展示网站的主导航标签,并提供访客到其它页面的链接。下拉菜单也常用于表单,用于选择选项,例如国家、城市、日期、时间等。 制作下拉菜单使用JavaScriptCSS实现的方法如下: 1. 首先需要创建一个HTML下拉菜单框架,在HTML文件中添加一个div元素,并为其设置一个id属性。 ```html <div id="dropdownMenu"> <button class="dropbtn">下拉按钮</button> <div class="dropdown-content"> <a href="#">链接1</a> <a href="#">链接2</a> <a href="#">链接3</a> </div> </div> ``` 2. 添加CSS样式,使下拉菜单具有所需的样式。在css文件中为下拉菜单设置样式,通过设置display属性为none,使下拉菜单在默认情况下不可见。 ```css #dropdownMenu { position: relative; display: inline-block; } .dropbtn { background-color: #4CAF50; color: white; padding: 16px; font-size: 16px; border: none; } .dropdown-content { display: none; position: absolute; z-index: 1; } .dropdown-content a { color: black; padding: 12px 16px; text-decoration: none; display: block; } .dropdown-content a:hover { background-color: #f1f1f1; } .show { display: block; } ``` 3. 添加JavaScript代码,使下拉菜单可见。在JavaScript文件中,为下拉按钮添加一个点击事件的监听器,通过在CSS样式中设置display属性为block,让下拉菜单可见。 ```js // 获取下拉按钮和下拉菜单 var dropbtn = document.querySelector(".dropbtn"); var dropdownContent = document.querySelector(".dropdown-content"); // 监听下拉按钮的点击事件 dropbtn.addEventListener("click", function() { // 切换下拉菜单的可见性 dropdownContent.classList.toggle("show"); }); // 在窗口外部点击,使下拉菜单消失 window.onclick = function(event) { if (!event.target.matches('.dropbtn')) { var dropdowns = document.getElementsByClassName("dropdown-content"); for (var i = 0; i < dropdowns.length; i++) { var openDropdown = dropdowns[i]; if (openDropdown.classList.contains('show')) { openDropdown.classList.remove('show'); } } } } ``` 通过上述步骤,我们就可以制作出一个简单的下拉菜单了。通过CSS样式可以调整下拉菜单的外观和布局,通过JavaScript代码可以使下拉菜单的可见性随用户的操作而变化,从而实现一个交互性强、易于使用的下拉菜单。 ### 回答3: 下拉菜单是网页设计中的一种常见元素,在页面中通常用于显示多个选项,便于用户进行选择。在网页开发中,可以使用JavaScriptCSS来制作下拉菜单。 一、使用CSS实现下拉菜单: 1.首先,我们需要准备一个HTML文件,如下图所示: ![image-20211208190358916](https://cdn.jsdelivr.net/gh/zd200572/img/202112091042085.png) 2.接下来,在CSS中定义一个下拉菜单的样式。样式代码如下: ```html <style> /*定义下拉菜单的样式*/ .dropdown { position: relative; display: inline-block; } /*定义下拉菜单的按钮样式*/ .dropdown-button { background-color: #4CAF50; color: white; font-size: 16px; border: none; cursor: pointer; } /*定义下拉菜单的选项样式*/ .dropdown-content { display: none; position: absolute; z-index: 1; } /*鼠标移动到下拉菜单上时,显示选项*/ .dropdown:hover .dropdown-content { display: block; } </style> ``` 3.在HTML中添加下拉菜单的按钮和选项。代码如下: ``` html <div class="dropdown"> <button class="dropdown-button">请选择</button> <div class="dropdown-content"> <a href="#">选项1</a> <a href="#">选项2</a> <a href="#">选项3</a> <a href="#">选项4</a> </div> </div> ``` 通过上面的代码,就可以实现一个简单的下拉菜单。需要注意的是,当鼠标移动到下拉菜单的按钮上时,选项才会显示。 二、使用JavaScript实现下拉菜单: 1.和上面一样,首先,我们需要准备一个HTML文件,如下图所示: ![image-20211208190358916](https://cdn.jsdelivr.net/gh/zd200572/img/202112091042085.png) 2.接下来,在CSS中定义一个下拉菜单的样式。样式代码和上面的方法一样,这里就不再赘述。 3.在HTML中添加下拉菜单的按钮和选项,并为按钮绑定一个点击事件。代码如下: ``` html <div class="dropdown"> <button class="dropdown-button" onclick="showMenu()">请选择</button> <div class="dropdown-content" id="menu"> <a href="#">选项1</a> <a href="#">选项2</a> <a href="#">选项3</a> <a href="#">选项4</a> </div> </div> ``` 需要注意的是,这里的按钮被绑定了一个`onclick`事件,点击按钮时会调用名为`showMenu()`的JavaScript函数。 4.接下来,在JavaScript中定义`showMenu()`函数的代码。这个函数用来控制下拉菜单的显示和隐藏。代码如下: ``` html <script> function showMenu() { var menu = document.getElementById("menu"); if (menu.style.display === "block") { menu.style.display = "none"; } else { menu.style.display = "block"; } } </script> ``` 通过上面的代码,我们就可以完成一个简单的JavaScript下拉菜单。 需要注意的是,在JavaScript实现下拉菜单时,我们需要为下拉菜单的选项设置一个`id`属性,这样才能够通过JavaScript获取到该选项,并控制其显示和隐藏。 总结: 无论是使用CSS还是JavaScript实现下拉菜单,在实现的过程中都需要注意以下几点: 1.下拉菜单的选项列表必须设置为隐藏状态,在需要显示时才将其设置为显示状态。 2.在CSS中通过:hover伪类来控制菜单列表的显示和隐藏。 3.在JavaScript中通过某个事件来触发菜单列表的显示和隐藏。需要注意的是,在JavaScript中获取菜单列表的方法需要根据具体情况来确定。通常情况下,菜单列表的代码需要先通过HTML中的id属性获取到,才能对其进行控制。 使用JavaScriptCSS制作下拉菜单的过程并不难,只需要熟悉HTMLCSSJavaScript的相关语法即可。无论是在网页设计中还是在web开发中,掌握制作下拉菜单的方法都是非常有用的,可以极大地提高页面的交互性和易用性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值