第一次尝试使用JS实现一个二级菜单栏
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
body {
margin: 0;
padding: 0;
}
#header {
height: 56px;
width: 100%;
border-bottom: 0.1px solid black;
}
#display {
float: left;
width: 600px;
height: 400px;
background-color: azure;
display: none;
}
#hide {
float: left;
background-color: aqua;
width: 500px;
height: 200px;
display: block;
position: relative;
top: 40px;
left: -30px;
}
li {
text-align: center;
width: 100px;
height: 56px;
list-style-type: none;
text-decoration: none;
}
</style>
</head>
<body>
<div id="header">
<ul>
<li id="list">
<a id="start" href="#">开始</a>
<ul>
<div id="hide"></div>//可以在div中再实现一个小页面
</ul>
</li>
</ul>
</div>
</body>
<script>
//获取li这个元素时只管重要,应该想嵌套的li与div是一个整体,所以addEventListener
//事件针对的其实是外面那个li而不是里面的
const li = document.querySelector('#list')
var under = document.getElementById('hide');
var a = document.getElementById('start');
//添加mouseover和mouseout事件改变display属性,让div出现或者不出现
li.addEventListener('mouseover',() => {
document.getElementById('hide').style.display = 'block'
})
li.addEventListener('mouseout',() => {
document.getElementById('hide').style.display = 'none'
})
</script>
</html>
本文介绍如何利用JavaScript技术实现交互式的二级菜单栏,通过简单的代码实现菜单项的展开和收起,增强网页的用户体验。
2448

被折叠的 条评论
为什么被折叠?



