New Feeds

[질답/버그/제안] 아코디언 메뉴에 대한 (테마 LTE) 질문입니다.

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

안녕하세요. 아미나 LTE 테마 구매자입니다. 

왼쪽 사이드에 고정되어 있는 일반 메뉴를 LTE 테마 아코디언 메뉴로 변경하고 싶어서 기존 코드 + 아코디언 메뉴 코드를 복붙해 보았는데요 ㅠ 

대메뉴(카테고리메뉴)를 클릭했을시 서브메뉴가 잘 보이고 열고 닫히는게 잘 됩니다. 검색을 통해서 첫번째 카테고리메뉴는 항상 열리게 한 상태 입니다. 

 

그런데 문제는 ㅠ  LTE 테마와 같이 대메뉴를 클릭하면 

열려져있던 대메뉴와 서브메뉴가 접히고 새롭게 클릭한 대메뉴와 그에 속한 서브 메뉴가 펼쳐져야 하는데 ... 

새롭게 클릭한 대메뉴에 속한 서브메뉴를 클릭해야 기존에 펼쳐져 있던 메뉴들이 접힙니다. ㅠ 

다른 메뉴 클릭시 열려져있던 대메뉴와 서브메뉴가 자동으로 접히지 않고 있습니다. 일일이 다시 한번 클릭해서 닫아 주던가 새롭게 다른 메뉴를 클릭해서 펼쳐진 서브메뉴를 클릭 해야 비로소 기존 펼쳐졌던 메뉴들이 접히는데 ... 중복 클릭해주지 않고 다른 대메뉴를 클릭했을때 새로운 메뉴들은 펼쳐지고 기존 메뉴들은 자동으로 접히게 하고 싶습니다. 

어떤 부분이 잘못되어 있고 어떤부분이 누락이 된것일까요?? 아래 코드한번 살펴봐주시면 감사하겠습니다. 


<?php

if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가 

?>



// 아코디언 메뉴의 동작을 위한 스크립트

$('.sidebar-menu li.first_depth > a').on('click', function(e) {

    e.preventDefault(); // 기본 이벤트 방지

    var currentElement = $(this);

    var collapseSection = currentElement.attr('href');

    if (!currentElement.closest('li').hasClass('active')) {

        // 다른 모든 열린 섹션을 닫고 현재 섹션을 엽니다.

        $('.panel-collapse').removeClass('in'); // 모든 서브메뉴 접기

        $(collapseSection).addClass('in'); // 현재 클릭한 서브메뉴 열기

        $('.first_depth').removeClass('active'); // 모든 메뉴 항목의 활성화 상태 제거

        currentElement.closest('li').addClass('active'); // 현재 메뉴 항목 활성화

    } else {

        // 이미 활성화된 섹션을 클릭한 경우, 닫기

        $(collapseSection).removeClass('in');

        currentElement.closest('li').removeClass('active');

    }

});





관련자료

댓글 0
등록된 댓글이 없습니다.
전체 1,963 / 11 페이지
번호
제목
이름

Favorites


최근글


새댓글


  • 댓글이 없습니다.
알림 0