모바일 메뉴 아코디언
본문
팁자료실에 해피정님의 소스를 받아 사용중입니다.
그런데 클라이언트 측에서 모바일 특정 메뉴 클릭시 서브메뉴가 아래로 내려오면 / 다른 열려있던 서브메뉴가 닫히게 해달라고 합니다.
어디를 어떻게 만져야할지 몰라 이렇게 글 남깁니다.
1. 메뉴1 클릭시 서브메뉴 내려오기.
2. 메뉴2 클릭시 서브메뉴 내려오면서 메뉴1 서브메뉴 닫히기.
// 서브메뉴 열기
$(function (){
$(".sub_toggle").on("click", function() {
var $this = $(this);
$sub_ul = $(this).closest("li").children("ul.sub_menu");
if($sub_ul.size() > 0) {
var txt = $this.text();
if($sub_ul.is(":visible")) {
txt = txt.replace(/닫기$/, "열기");
$this
.removeClass("sd_cl")
.text(txt);
} else{
txt = txt.replace(/열기$/, "닫기");
$this
.addClass("sd_cl")
.text(txt);
}
$sub_ul.toggle();
}
});
});
서브메뉴열기 스크립트 코드부분입니다/.
답변 1
$(function (){
$(".sub_toggle").on("click", function() {
txt = txt.replace(/닫기$/, "열기");
$(".sub_menu").removeClass("sd_cl");
$(".sub_menu").text(txt);
var $this = $(this);
$sub_ul = $(this).closest("li").children("ul.sub_menu");
if($sub_ul.size() > 0) {
var txt = $this.text();
if($sub_ul.is(":visible")) {
txt = txt.replace(/닫기$/, "열기");
$this
.removeClass("sd_cl")
.text(txt);
} else{
txt = txt.replace(/열기$/, "닫기");
$this
.addClass("sd_cl")
.text(txt);
}
$sub_ul.toggle();
}
});
});
이렇게 바꿔보세요