嘿伙计们,我正在尝试使用此HTML创建带有手风琴的视图:
<ul class="left_menu_list">
<li class="left_menu_item active" data-item="firma">
<div>LA FIRMA</div>
<ul class="firma_list secondary_list">
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA firma_list</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
</ul>
</li>
<li class="left_menu_item" data-item="areas">
<div>ÁREAS E INDUSTRIAS</div>
<ul class="areas_list hidden secondary_list">
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA areas_list</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
</ul>
</li>
<li class="left_menu_item" data-item="oficinas">
<div>OFICINAS</div>
<ul class="oficinas_list hidden secondary_list">
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA oficinas_list</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
</ul>
</li>
<li class="left_menu_item" data-item="equipo">
<div>EQUIPO</div>
<ul class="equipo_list hidden secondary_list">
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA equipo_list</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
</ul>
</li>
<li class="left_menu_item" data-item="compromiso">
<div>COMPROMISO</div>
<ul class="compromiso_list hidden secondary_list">
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA compromiso_list</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
</ul>
</li>
<li class="left_menu_item" data-item="comunicacion">
<div>COMUNICACIÓN</div>
<ul class="comunicacion_list hidden secondary_list">
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA comunicacion_list</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
</ul>
</li>
<li class="left_menu_item" data-item="empleo">
<div>EMPLEO</div>
<ul class="empleo_list hidden secondary_list">
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA empleo_list</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
</ul>
</li>
<li class="left_menu_item" data-item="alumni">
<div>ALUMNI</div>
<ul class="alumni_list hidden secondary_list">
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA empleo_list</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
<li class="secondary_list_item">LA FIRMA</li>
</ul>
</li>
</ul>
使用此 css:
.left_menu_list{
.left_menu_item{
.secondary_list{
display: none;
position: relative;
background: @white;
margin-top: 0;
left: -4.42vw;
width: 100%;
top: 0;
padding-left: 4.42vw;
.secondary_list_item{
margin-left: 20px;
}
}
}
我创建了一些JS代码,试图创建效果:
$('.left_menu_item').click(function(){
if(false == $(this).children('ul').is(':visible')) {
$(this).children('ul').slideUp(300);
}
$(this).children('ul').slideToggle();
});
主要问题是slideDown((效果完美运行,但是slideUp((效果不起作用。它使滑动向下,但是当我单击另一个项目时,slideUp 不会触发,它只是被隐藏而没有任何效果。
有谁知道为什么?谢谢。
像下面这样做(只有 3 行代码(:-
$('.left_menu_item').click(function(){
$(this).children('ul').slideToggle();
$('.left_menu_item').not(this).children('ul').slideUp();
});
注意:- 您显示CSS
是错误的。像我在回答中所做的那样相应地更改它
您还可以在slideToggle(500)
和slideUp(500)
中提供一些时间跨度,以使其有点令人窒息。
使用您的代码的工作示例:-
https://jsfiddle.net/b8ww8q8L
你好,使用以下代码
$(".left_menu_list > li > div").click(function(){
if(false == $(this).next().is(':visible')) {
$('.left_menu_list ul').slideUp(300);
}
$(this).next().slideToggle(300);
});
$('.left_menu_list ul:eq(0)').show();
见下面的小提琴
小提琴演示