플라이아웃 메뉴에 자바스크립트 먹이려고 하는데 코드 좀 봐주세요

플라이아웃 메뉴에 자바스크립트 먹이려고 하는데 코드 좀 봐주세요

QA

플라이아웃 메뉴에 자바스크립트 먹이려고 하는데 코드 좀 봐주세요

본문


    $('.cd-side-nav a').on('click', function(){
        var element = $(this).parent('.has-children');
        if (element.hasClass('active')) {
            element.removeClass('active');
            element.find('.has-children').removeClass('active');
        }
        else {
            element.addClass('active');
            element.siblings('.has-children').removeClass('active');
            element.siblings('.has-children').find('li').removeClass('active');
            $(".hover a").trigger("click");*
                    }
    });
    
    $('.cd-side-nav li.hover a').on('click', function(){
        var element = $(this).parent('.has-children');
        if (element.hasClass('active')) {
            element.removeClass('active');
            element.find('li').removeClass('active');
        }
        else {
            element.addClass('active');
            element.siblings('.has-children').removeClass('active');
            element.siblings('.has-children').find('li').removeClass('active');
            }
    });
 

 

링크의 메뉴판을 

마우스 오버 시 플라이아웃 메뉴가 보이고 

플라이 아웃 된 메뉴를 누르면  사이드 메뉴 아래에 메뉴가 보이도록 하고싶어서

 

.hover a를 누르면 이벤트가 발생하도록 했는데 적용이 안 되네요 ㅠㅠ 

 

트리거를 넣으면 몇 번 되다가 오류가 나는데 

어디를 손봐야 할까요

이 질문에 댓글 쓰기 :

답변 1


$('.cd-side-nav a').on('click', function(){
    var element = $(this).parent('.has-children');
    if (element.hasClass('active')) {
        console.log("a");
        element.removeClass('active');
        element.find('.has-children').removeClass('active');
    }
    else {
        console.log("d");
        element.addClass('active');
        element.siblings('.has-children').removeClass('active');
        element.siblings('.has-children').find('li').removeClass('active');
    }
});

 

이렇게만 넣으셔도 될 것 같은데요??

trigger를 반복시키면서 사실상 무한루프가 돌기 때문에 안 되는 것이고, 위에 올리신 코드에서도 오타가 있네요 (*이라고 들어가있네요)

넣으신 코드 말고 이 코드 넣으셔서 실행해보세요~

답변을 작성하시기 전에 로그인 해주세요.
전체 294
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT