기본적으로 3 개의 옵션과 3 개의 div가있는 설정 메뉴가 있습니다.이 중 2 개는 기본적으로 숨겨져 있습니다. 모든 것은 첫 번째 클릭에서 잘 작동하고, 올바른 div를 숨기고 현재 div에서 활성 클래스를 제거하고 클릭 한 div에 추가하면서 올바른 div를 표시합니다. 그러나 내가 다른 링크를 다시 클릭하면, 그것은 올바른 div 아래로 미끄러지지만 다른 열린 div 위로 미끄러지지 않습니다. 나는 붙어있다.jQuery로 divs 숨기기 및 표시
코드 :
HTML :
<ul class="nav nav-pills">
<li class="settingLink active" data-tab="general"><a href="#">General</a></li>
<li class="settingLink" data-tab="social" ><a href="#">Social</a></li>
<li class="settingLink" data-tab="captcha"><a href="#">Captcha</a></li>
</ul>
div의 :
<div id="generalSettings">
</div>
<div id="socialSettings">
</div>
<div id="captchaSettings">
</div>
JS :
function settingMenu(event)
{
$('.settingLink').bind('click', function(){
//The tab value of the currently clicked element
var tab = $(this).data('tab');
//Current active element
var current = $('.active, .settingLink').data('tab');
//Slide the old div up
$('#'+current+'Settings').slideUp('fast', function(){
//Slide the new div down
$('#'+tab+'Settings').slideDown();
});
//Remove active class from current link
$('.active, .settingLink').removeClass('active');
//Add active class to new link
$(this).addClass('active');
});
}
사전에 감사합니다!
BTW이
선택을 시도 - 그것은 클릭를 연결하는 좋은 형태입니다 LI가 아닌 A- 태그에. –