.resize(function() 이렇게 쓰는게 맞나요?

.resize(function() 이렇게 쓰는게 맞나요?

QA

.resize(function() 이렇게 쓰는게 맞나요?

본문

제가 

 

$(document).ready(function () {
                    $(".nav_headmenu>a").click(function () {
                        var submenu = $(this).next("div");

                        if (submenu.is(":visible")) {
                            submenu.slideUp();
                        } else {
                            submenu.slideDown();
                        }

                    });
                });

 

라는 코드가 화면 해상도 768밑에서만 작동되도록 하기위해서 

 

 

$(window).resize(function() {
    if($(window).width() < 768) {
                $(document).ready(function () {
                    $(".nav_headmenu>a").click(function () {
                        var submenu = $(this).next("div");

                        if (submenu.is(":visible")) {
                            submenu.slideUp();
                        } else {
                            submenu.slideDown();
                        }

                    });
                });
            };
});

 

이렇게 어두운 색상 부분의 코드를 추가해주었는데

작동을 했다가 안했다가

해상도를 줄였다가 키우면 작동했다가

키운상태로 새로고침하면 안움직였다가

드롭다운메뉴에 관한 부분인데 다운되었다가 바로 올라가버리고..

엉망진창으로 움직입니다.. 도와주세요..

이 질문에 댓글 쓰기 :

답변 1


$(".nav_headmenu>a").click(function () {
    if($(window).width() < 768) {
                        var submenu = $(this).next("div");
                        if (submenu.is(":visible")) {
                            submenu.slideUp();
                        } else {
                            submenu.slideDown();
                        }
 }
                    });

리사이즈 구문 지우시고 위처럼 하시면 됩니다.
지금 질문글에 쓰신 소스는  최초 창크기와 상관없이 사용자가 창크기를 변경하여
768미만의 창크기 일 때 클릭이벤트가 계속 등록되는 구문입니다.

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

회원로그인

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