我有一个包含子菜单的垂直菜单栏。有9-10个菜单,每个菜单包含 3个子菜单。
如果菜单1打开并且有人点击菜单3菜单1应关闭&菜单3将打开
$('#nav li a').click(function(){
var sds = document.getElementById("dum");
if(sds == null){
;
}
var sdss = document.getElementById("dumdiv");
if(sdss == null){
}
if(sdss != null){
var s = $(this).attr('id');
var imgid=$("#"+s+" img").attr('id');
var imgsrc=$("#"+imgid+"").attr('src');
if(imgsrc=="images/insert.GIF")
{
$("#"+imgid+"").attr('src','images/remove.GIF');
$(this).next().slideDown(400);
$("#"+s+"").css("background-color","#142878");
}
else
{
$("#"+imgid+"").attr('src','images/insert.GIF');
$(this).next().slideUp(400);
$("#"+s+"").css("background-color","#2d539a");
}
}
});
答案 0 :(得分:2)
答案 1 :(得分:2)
将此代码添加到您的代码的开头:
$('#nav li a').click(function(){
$(this).closest('li').siblings('li').find('.count').slideUp();
// Rest of the code here
<强> Updated Demo 强>
答案 2 :(得分:1)
试试这个:
$('.count').slideUp(400); //<----add this line
$(this).next().slideDown(400);
试试这个:
if (imgsrc == "images/insert.GIF") {
$("#" + imgid + "").attr('src', 'images/remove.GIF');
$('.count').slideUp(400);
$(this).next().slideDown(400);
$("#" + s + "").css("background-color", "#142878");
} else {
$("#" + imgid + "").attr('src', 'images/insert.GIF');
$('.count').slideUp(400); //<--------------------add here
$(this).next().slideDown(400); //<---------------and here too.
$("#" + s + "").css("background-color", "#2d539a");
}