JavaScript函数只能打开一个菜单
JavaScript function is only open one offcanva menu
我建立了两个离线侧边栏,其中一个是在右边,包括正常的菜单的webapp,第二个应该是一个通知侧边栏,问题是,左边的工作完美。当我点击汉堡包图标时,它会打开左侧栏,但当我点击另一个图标时,什么也没发生,右侧栏不会打开,谷歌Chrome控制台,显示没有错误。
第一个是希望打开左侧栏的链接,目前为止是有效的。右边是通知侧边栏,它不会打开。
jsfiddle
<a href="#" id="open-pulse-sidebar"><i class="icon-menu circle-icon"></i></a>
<a href="#" id="open-notification-sidebar"><i class="icon-globe circle-icon"></i></a>
左侧工作边栏的Html
<div class="pulse-sidebar">
<div class="sidebar-bg clearfix">
<div class="sidebar-profile">
<img src="img/users/avatar.jpg" class="sidebar-img" alt="Candice Swanepoel" title="Candice Swanepoel" />
<h5>Candice Swanepoel</h5>
</div>
</div>
<ul>
<li><a href="#">Dashboard</a></li>
<li><a href="#">Models</a></li>
<li><a href="#">Kunden</a></li>
<li><a href="#">Finanzen</a></li>
<li><a href="#">Mitarbeiter</a></li>
<li><a href="#">Einstellung</a></li>
</ul>
<div class="sidebar-logout">
<a href="#">
<i class="icon-logout circle-icon"></i>
<h5>Logout</h5>
</a>
</div>
</div>
和右边栏的HTML -它在
内有虚拟内容<div class="notification-sidebar">
<ul>
<li><a href="#">Dashboard</a></li>
<li><a href="#">Models</a></li>
<li><a href="#">Kunden</a></li>
<li><a href="#">Finanzen</a></li>
<li><a href="#">Mitarbeiter</a></li>
<li><a href="#">Einstellung</a></li>
</ul>
</div>
这是我的JavaScript和它们的CSS
// Toggle Pulse Sidebar
$('#open-pulse-sidebar').click(function() {
$('.pulse-sidebar').toggleClass('active')
})
$(document).click(function(e) {
var sidebar = $(".pulse-sidebar, #open-pulse-sidebar");
if (!sidebar.is(e.target) && sidebar.has(e.target).length === 0) {
sidebar.removeClass('active')
}
});
// Toogle Notification Sidebar
$('#open-notification-sidebar').click(function() {
$('.notification-sidebar').toggleClass('active')
})
$(document).click(function(e) {
var sidebar = $(".notification-sidebar, #open-notification-sidebar");
if (!sidebar.is(e.target) && sidebar.has(e.target).length === 0) {
sidebar.removeClass('active')
}
});
CSS .pulse-sidebar {
height: 100%;
width: 19.24em;
position: fixed;
z-index: 9999;
top: 0;
left: 0;
background-color: #fff;
overflow-x: hidden;
transform: translateX(-120%);
transition: all 0.4s ease-in;
-webkit-box-shadow: 2px 0px 13px 0px rgba(0,0,0,0.4);
-moz-box-shadow: 2px 0px 13px 0px rgba(0,0,0,0.4);
box-shadow: 2px 0px 13px 0px rgba(0,0,0,0.4);
}
.notification-sidebar {
height: 100%;
width: 19.24em;
position: fixed;
z-index: 9999;
top: 0;
right: 0;
background-color: #fff;
overflow-x: hidden;
transform: translateX(120%);
transition: all 0.4s ease-in;
-webkit-box-shadow: 2px 0px 13px 0px rgba(0,0,0,0.4);
-moz-box-shadow: 2px 0px 13px 0px rgba(0,0,0,0.4);
box-shadow: 2px 0px 13px 0px rgba(0,0,0,0.4);
}
问题是,您的.active
css类仅对您拥有的第一个边栏有效。你必须创建第二个例子,像这样。这将修复它
.notification-sidebar.active{
transform: translateX(0);
}
在CSS中再添加一个class
.notification-sidebar.active{
transform: translateX(0);
}
这将解决这个问题。
https://jsfiddle.net/q0qhtzn6/5/相关文章:
- 正在读取<p: 选择一个菜单/>在onchange回调中
- 禁用数据自动关闭下拉列表基金会只需在一个菜单中
- 如何更改此按钮/菜单列表,以便一次只能看到一个菜单
- 如何更改<h: 选择一个菜单>在JSF中选择一个条目的下拉菜单
- 使用一个菜单按钮添加animate-in和animate-out类
- 引导两个响应菜单-单击另一个菜单按钮时折叠一个菜单
- jQuery:如何创建一个菜单和子菜单,每次单击时类都会在其中切换
- 如何在鼠标悬停时打开素数选择一个菜单
- 在选择一个菜单更改的同一窗口中打开一个对话框
- 单击一个菜单项时显示隐藏字段 - 高级自定义字段转发器
- 在“选择一个菜单”框中获取所选值
- 有了手风琴菜单,我如何确保打开一个菜单会关闭它的兄弟菜单
- 我需要创建一个菜单,它有多个子菜单
- 我如何使一个菜单在HTML中显示为一个选项卡,直到点击
- 我的Bootstrap模式锚不是从一个菜单(导航栏)的行项目内工作
- 在一个菜单模板中插入不同的菜单项
- 如何用另一个活动菜单突出显示另一个菜单
- 我有一个菜单,我不知道如何正确使用slideToggle,当我按下另一个按钮时,向下滑动和向上滑动
- 一个菜单的一些页面与mongodb的链接
- 触摸设备的jQuery下拉导航.单击另一个菜单项时不能隐藏菜单项