테스트 사이트 - 개발 중인 베타 버전입니다

창사이즈 변화에 따른 실행 채택완료

비비비비빕 8년 전 조회 4,822

$( window ).resize(function() {

   var windowWidth = $( window ).width();

   if(windowWidth < 800) {

      //창 가로 크기가 800 미만일 경우 

       repon();

       return false;

   } else {

      //창 가로 크기가 800보다 클 경우

       repon();

   }

})

 

*창크기가 800미만일경우 실행하고 800초과일경우 실행하는 내용입니다..

 

첫입장시에 크기가 800 미만이면 repon이 실행안하는데

800이상으로 키웠다가 800미만으로 줄이면 repon이 계속 실행된채로 있습니다...

 

창사이즈에 변화를주면 repon이 중지됬다가 실행됬다가 하게 하고싶습니다

도움부탁드립니다

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

800보다 작거나 커질 때 한 번씩만 실행하는 것 아닌가요?

 

var isSmall = $(window).width() >= 800 ? false : true;
$(window).resize(function() {
    if ($(this).width() < 800) {
        if (!isSmall) {
            $("body").append($(this).width() + "<br>");
            isSmall = true;
        }
    }
    else {
        if (isSmall) {
            $("body").append($(this).width() + "<br>");
            isSmall = false;
        }
    }
});

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

비비비비빕
8년 전
답변감사합니다.

800보다 크면 repon이 실행되고
800보다 작으면 repon이 정지해야합니다..
반응형이라 창 크기를 늘렸다 줄였다 해도
800보다 크면 repon이 실행되고
800보다 작으면 repon이 정지해야합니다

답변해주신 코드 적용시
새로고침시 800이상이면 repon이 작동안하고 (repon이 작동해야함)
새로고침시 800이하면 작동안하고 800이상으로 키웠을때 작동하고 (여기까진 맞는데..)
다시 800이하로 줄이면 동작이 멈춰야하는데 동작합니다..

관련정보가 너무 없네요 ㅠㅠ

댓글을 작성하려면 로그인이 필요합니다.

var isSmall = $( window ).width() >= 800 ? false : true;

 

$( window ).resize(function() {

   var windowWidth = $( window ).width();

   if(windowWidth < 800) {

      //창 가로 크기가 800 미만일 경우  

if (!isSmall) { 

isSmall = true; 

       repon();

       }

   } else {

      //창 가로 크기가 800보다 클 경우

if (isSmall) { 

isSmall = false; 

       repon();

   }

}).trigger("resize");

 

 

 

약간 헷갈리는 데 이렇게 하면 되지 않을까요? 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

비비비비빕
8년 전
똑같이 창크기를 늘렸다 줄이면 이벤트가 계속 실행됩니다..

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인