javascript - jQuery :how to show and hide a vertical panel?

标签 javascript jquery css

我有以下面板代码。我希望能够显示和隐藏面板。

当我关闭面板时,它应该只显示 x 大格式的图标并删除文本,我该如何执行此操作?我使用 fontawesome 作为图标

这是我的 FIDDLE和下面的代码片段:

<!-- BEGIN side bar menu - container--->
  <div class="sidebar-menu-c"> 
  <section style="width: 200px">
    <ul class="sidebar-menu">
      <li class="header">MAIN NAVIGATION</li>
      <li class="treeview">
        <a href="#">
          <i class="fa fa-dashboard"></i> <span>Dashboard</span> <i class="fa fa-angle-left pull-right"></i>
        </a>
        <ul class="treeview-menu">
          <li><a href="#"><i class="fa fa-circle-o"></i> Dashboard v1</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Dashboard v2</a></li>
        </ul>
      </li>
      <li class="treeview">
        <a href="#">
          <i class="fa fa-files-o"></i>
        <span>Layout Options</span>
          <span class="label label-primary pull-right">4</span>
        </a>
        <ul class="treeview-menu" style="display: none;">
          <li><a href="#"><i class="fa fa-circle-o"></i> Top Navigation</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Boxed</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Fixed</a></li>
          <li class=""><a href="#"><i class="fa fa-circle-o"></i> Collapsed Sidebar</a>
          </li>
        </ul>
      </li>
      <li>
        <a href="#">
          <i class="fa fa-th"></i> <span>Widgets</span>
          <small class="label pull-right label-info">new</small>
        </a>
      </li>
      <li class="treeview">
        <a href="#">
          <i class="fa fa-pie-chart"></i>
        <span>Charts</span>
          <i class="fa fa-angle-left pull-right"></i>
        </a>
        <ul class="treeview-menu">
          <li><a href="#"><i class="fa fa-circle-o"></i> ChartJS</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Morris</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Flot</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Inline charts</a></li>
        </ul>
      </li>
      <li class="treeview">
        <a href="#">
          <i class="fa fa-laptop"></i>
        <span>UI Elements</span>
          <i class="fa fa-angle-left pull-right"></i>
        </a>
        <ul class="treeview-menu">
          <li><a href="#"><i class="fa fa-circle-o"></i> General</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Icons</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Buttons</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Sliders</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Timeline</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Modals</a></li>
        </ul>
      </li>
      <li class="treeview">
        <a href="#">
          <i class="fa fa-edit"></i> <span>Forms</span>
          <i class="fa fa-angle-left pull-right"></i>
        </a>
        <ul class="treeview-menu">
          <li><a href="#"><i class="fa fa-circle-o"></i> General Elements</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Advanced Elements</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Editors</a></li>
        </ul>
      </li>
      <li class="treeview">
        <a href="#">
          <i class="fa fa-table"></i> <span>Tables</span>
          <i class="fa fa-angle-left pull-right"></i>
        </a>
        <ul class="treeview-menu">
          <li><a href="#"><i class="fa fa-circle-o"></i> Simple tables</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Data tables</a></li>
        </ul>
      </li>
      <li>
        <a href="#">
          <i class="fa fa-calendar"></i> <span>Calendar</span>
          <small class="label pull-right label-danger">3</small>
        </a>
      </li>
      <li>
        <a href="#">
          <i class="fa fa-envelope"></i> <span>Mailbox</span>
          <small class="label pull-right label-warning">12</small>
        </a>
      </li>
      <li class="treeview">
        <a href="#">
          <i class="fa fa-folder"></i> <span>Examples</span>
          <i class="fa fa-angle-left pull-right"></i>
        </a>
        <ul class="treeview-menu">
          <li><a href="#"><i class="fa fa-circle-o"></i> Invoice</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Profile</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Login</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Register</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Lockscreen</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> 404 Error</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> 500 Error</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Blank Page</a></li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Pace Page</a></li>
        </ul>
      </li>
      <li class="treeview">
        <a href="#">
          <i class="fa fa-share"></i> <span>Multilevel</span>
          <i class="fa fa-angle-left pull-right"></i>
        </a>
        <ul class="treeview-menu">
          <li><a href="#"><i class="fa fa-circle-o"></i> Level One</a></li>
          <li>
            <a href="#"><i class="fa fa-circle-o"></i> Level One <i class="fa fa-angle-left pull-right"></i></a>
            <ul class="treeview-menu">
              <li><a href="#"><i class="fa fa-circle-o"></i> Level Two</a></li>
              <li>
                <a href="#"><i class="fa fa-circle-o"></i> Level Two <i class="fa fa-angle-left pull-right"></i></a>
                <ul class="treeview-menu">
                  <li><a href="#"><i class="fa fa-circle-o"></i> Level Three</a></li>
                  <li><a href="#"><i class="fa fa-circle-o"></i> Level Three</a></li>
                </ul>
              </li>
            </ul>
          </li>
          <li><a href="#"><i class="fa fa-circle-o"></i> Level One</a></li>
        </ul>
      </li>
      <li><a href="#"><i class="fa fa-book"></i> <span>Documentation</span></a></li>
      <li class="header">LABELS</li>
      <li><a href="#"><i class="fa fa-circle-o text-red"></i> <span>Important</span></a></li>
      <li><a href="#"><i class="fa fa-circle-o text-yellow"></i> <span>Warning</span></a></li>
      <li><a href="#"><i class="fa fa-circle-o text-aqua"></i> <span>Information</span></a></li>
    </ul>
  </section>
</div>   

最佳答案

一个简短的帮助...不是最佳实践,但您可以从我的代码中理解这个想法:

    $(document).ready(function() {
     $('.sidebar-menu').prepend('<div class="close_btn"></div>');
$('.close_btn').click(function(){
$(this).siblings().toggle();
});

});

CSS:

.close_btn {
position: absolute;
width: 20px;
height: 20px;
background: rgb(255, 0, 0);
top: 0;
left: 0;
z-index: 99999;
cursor: pointer;

}

关于javascript - jQuery :how to show and hide a vertical panel?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38720248/

相关文章:

javascript - 我不明白为什么我的代码没有获取输入框的值并创建一个新对象

javascript - jQuery tinyscrollbar - 不显示所有内容

HTML 元素选择视觉上不均匀,出现竖线

javascript - 创建时选择Nav Capital Case

javascript - 按模式查找 id(无需 jquery 或第 3 方库)

javascript - 使用 LoDash 对时间序列数据进行分组和求和

javascript - 匿名函数: "object is not a function"

javascript - 每 x 秒自动刷新 div 并停止成功加载

javascript - 如何让 jQuery 选择带有 . (句号)在他们的身份证?

html - 如何在标题下方对齐网页上的内容