我用html、css和JavaScript创建了一个响应式导航栏。当页面宽度小于768px时,将显示条形图标,单击该图标时,将显示导航菜单。问题是当导航菜单出现时,页面仍在后台滚动。导航菜单下的滚动应该停止。
null
const button1 = document.getElementsByClassName("button")[0];
const navLinks1 = document.getElementsByClassName("navLinks")[0];
button1.addEventListener('click', () => {
navLinks1.classList.toggle('active')
})
* {
box-sizing: border-box;
text-decoration: none;
list-style: none;
padding: 0;
margin: 0;
font-family: 'Prompt', sans-serif;
}
.logo {
display: block;
padding: 1rem;
color: whitesmoke;
}
nav {
position: fixed;
top: 0;
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
background-color: blueviolet;
z-index: 5;
}
nav ul {
display: flex;
}
nav ul li a {
padding: 1rem;
display: block;
color: whitesmoke;
}
nav ul li a:hover {
background-color: rgb(48, 0, 94);
}
.button {
position: absolute;
top: 0.5rem;
right: 0.5rem;
display: none;
color: whitesmoke;
}
.content {
margin-top: 5rem;
text-align: center;
}
@media screen and (max-width: 786px) {
.button {
display: block;
font-size: 2rem;
}
nav {
flex-direction: column;
}
.navLinks {
display: none;
flex-direction: column;
width: 100%;
text-align: center;
margin-top: 2rem;
}
.navLinks.active {
display: flex;
height: 100vh;
}
}
<header>
<nav>
<div class="logo">Logo</div>
<a href="#" class="button" id="btn"><i class="fa fa-bars"></i></a>
<ul class="navLinks">
<li><a href="#" class="key1" id="active">Home</a></li>
<li><a href="#" class="key2">About</a></li>
<li><a href="#" class="key3">Blog</a></li>
<li><a href="#" class="key4">Contact</a></li>
</ul>
</nav>
</header>
<div class="content">
<h1>Content</h1>
<h2>More content</h2>
</div>
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
null
在菜单打开时向主体添加类,如下所示:
document.body.classList.toggle("active");
还要将溢出:隐藏;
添加到其中...
body.active {
overflow: hidden;
}
null
const button1 = document.getElementsByClassName("button")[0];
const navLinks1 = document.getElementsByClassName("navLinks")[0];
button1.addEventListener('click', () => {
navLinks1.classList.toggle('active');
document.body.classList.toggle("active");
})
* {
box-sizing: border-box;
text-decoration: none;
list-style: none;
padding: 0;
margin: 0;
font-family: 'Prompt', sans-serif;
}
body.active {
overflow: hidden;
}
.logo {
display: block;
padding: 1rem;
color: whitesmoke;
}
nav {
position: fixed;
top: 0;
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
background-color: blueviolet;
z-index: 5;
}
nav ul {
display: flex;
}
nav ul li a {
padding: 1rem;
display: block;
color: whitesmoke;
}
nav ul li a:hover {
background-color: rgb(48, 0, 94);
}
.button {
position: absolute;
top: 0.5rem;
right: 0.5rem;
display: none;
color: whitesmoke;
}
.content {
margin-top: 5rem;
text-align: center;
}
@media screen and (max-width: 786px) {
.button {
display: block;
font-size: 2rem;
}
nav {
flex-direction: column;
}
.navLinks {
display: none;
flex-direction: column;
width: 100%;
text-align: center;
margin-top: 2rem;
}
.navLinks.active {
display: flex;
height: 100vh;
}
}
<header>
<nav>
<div class="logo">Logo</div>
<a href="#" class="button" id="btn"><i class="fa fa-bars"></i></a>
<ul class="navLinks">
<li><a href="#" class="key1" id="active">Home</a></li>
<li><a href="#" class="key2">About</a></li>
<li><a href="#" class="key3">Blog</a></li>
<li><a href="#" class="key4">Contact</a></li>
</ul>
</nav>
</header>
<div class="content">
<h1>Content</h1>
<h2>More content</h2>
</div>
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
<br> <br> <br> Content
本文向大家介绍WordPress动态页面菜单导航,包括了WordPress动态页面菜单导航的使用技巧和注意事项,需要的朋友参考一下 在编写了可以在Wordpress中创建给定页面的子页面列表的函数之后,我需要更强大,更自动的功能。为此,我创建了一个插件,该插件将创建一个包含动态创建的页面菜单的小部件。 该小部件可以确定当前正在显示的页面,并将爬到页面树上,直到找到根页面为止。在攀爬页面树的同时,插
页面局部滚动,利用vue-scrollto做了页面内部导航的功能,如何实现监听滚动页面,自动切换导航菜单?点击导航,右侧滚动到锚定位置,同时,右侧滚动时,希望能自定定位导航菜单。 监听滚动页面,自动切换导航菜单
主要内容:Eclipse 导航菜单,Open Type,Open Type in Hierarchy,Open ResourceEclipse 导航菜单 导航菜单提供了许多菜单项,允许您快速定位和导航到资源。 其中,Open Type、Open Type in Hierarchy 和 Open Resource 菜单项往往非常有用。 Open Type Open Type 菜单项会弹出一个对话框,允许您定位 Java 类型。在过滤器文本框中输入完全限定名称或类的名称。'*' 字符代表 0 个或多
为网站提供导航功能的菜单。 顶栏 适用广泛的基础用法。 导航菜单默认为垂直模式,通过mode属性可以使导航菜单变更为水平模式。另外,在菜单中通过submenu组件可以生成二级菜单。Menu 还提供了background-color、text-color和active-text-color,分别用于设置菜单的背景色、菜单的文字颜色和当前激活菜单的文字颜色。 <el-menu :default-act
NavMenu 导航菜单 为网站提供导航功能的菜单。 顶栏 适用广泛的基础用法。 ::: demo render() { return ( <div> <Menu theme="dark" defaultActive="1" className="el-menu-demo" mode="horizontal" onSelect={this.onSelect.bind(thi
为网站提供导航功能的菜单。 顶栏 适用广泛的基础用法。 <el-menu [model]="0" (modelChange)="handle($event)" class="el-menu-demo" mode="horizontal"> <el-menu-item index="1">处理中心</el-menu-item> <el-submenu index="2" title="我的工