2뎁스 메뉴 활성화 하고 싶습니다.
본문
메뉴는 아래와 같은 구조입니다.
js 에서 menu2-1에 acitve 클라스를 주고 싶은데 어떻게 해야하나요?
즐거운 하루 보내세요.
<HTML>
<div id="sidemenu">
<ul>
<li>menu1</li>
<li class="has-sub">menu2
<ul>
<li>menu2-1</li>
</ul>
</li>
</ul>
</div>
<JS>
( function( $ ) {
$( document ).ready(function() {
$('#sidemenu > ul > li > a').click(function() {
$('#sidemenu li').removeClass('active');
$(this).closest('li').addClass('active');
var checkElement = $(this).next();
if((checkElement.is('ul')) && (checkElement.is(':visible'))) {
$(this).closest('li').removeClass('active');
checkElement.slideUp('normal');
}
if((checkElement.is('ul')) && (!checkElement.is(':visible'))) {
$('#sidemenu ul ul:visible').slideUp('normal');
checkElement.slideDown('normal');
}
if($(this).closest('li').find('ul').children().length == 0) {
return true;
} else {
return false;
}
});
});
} )( jQuery );
답변 2
( function( $ ) {
$( document ).ready(function() {
$('#sidemenu > ul > li > a').click(function() {
$('#sidemenu li').removeClass('active');
$(this).closest('li').addClass('active');
$(this).children('ul li').addClass('active');
var checkElement = $(this).next();
if((checkElement.is('ul')) && (checkElement.is(':visible'))) {
$(this).closest('li').removeClass('active');
checkElement.slideUp('normal');
}
if((checkElement.is('ul')) && (!checkElement.is(':visible'))) {
$('#sidemenu ul ul:visible').slideUp('normal');
checkElement.slideDown('normal');
}
if($(this).closest('li').find('ul').children().length == 0) {
return true;
} else {
return false;
}
});
});
} )( jQuery );
답변 감사합니다. 하지만 클래스가 적용안되네요.
대안 없을까요?
답변을 작성하시기 전에 로그인 해주세요.