因此,我有一个简单的菜单:当您单击一个时,将显示一个项目,当您单击两个时,将显示两个项目。 ONE和TWO具有切换功能,因此它们在单击时会上下滑动,但是当我在不关闭ONE的情况下切换TWO时,事情就会变得混乱。
$(function() {
$('li.sub', '#navigation').each(function() {
var $li = $(this);
var $div = $('div.submenu', $li);
var top = $li.height();
$li.toggle(function() {
$div.css('top', top).
slideDown('slow');
},
function() {
$div.
slideUp('slow');
});
});
});
小提琴:http://jsfiddle.net/vGSWm/2/
最佳答案
你可以试试这个
$(function() {
$('#navigation li.sub').click(function(e) {
var el = $(this).find('.submenu');
$('.submenu').not(el).slideUp(function(){
el.slideToggle();
});
});
});
DEMO.
更新:
$(function() {
$('#navigation li.sub').click(function(e) {
var el = $(this).find('.submenu');
if(el.hasClass('open'))
{
el.slideUp(function(){
el.removeClass('open');
});
}
else
{
var opened = $('.submenu.open');
if(opened.length)
{
opened.slideUp(function(){
opened.removeClass('open');
el.slideToggle(function(){
el.addClass('open');
});
})
}
else
{
el.slideToggle(function(){
el.addClass('open');
});
}
}
});
});
DEMO。
关于jquery - 点击时的jQuery下拉列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15058159/