제이쿼리 이벤트 관련 문제

제이쿼리 이벤트 관련 문제

QA

제이쿼리 이벤트 관련 문제

답변 3

본문

게시판 목록 스킨(list.skin.php) 에서 창 크기가 768 픽셀 이하일 때만

표의 제목(TBODY TR 부분)을 클릭하면 해당 게시물로 이동하도록 자바스크립트를 짰습니다.

 

문제는 창 크기를 줄였다가 크게 늘리면

768 이상인데도 클릭이 됩니다.

 

어떻게 수정해야 하나요?

 


<script>
var checkSizeDelay = 300; // 300
var checkSizeTimer = null;
$(window).load(function(){
    checkSize();
});
$(window).on('resize', function(){
    clearTimeout(checkSizeTimer);
    checkSizeTimer = setTimeout(function(){
        checkSize();
    }, checkSizeDelay);
});
function checkSize(){
  if($(window).width() < 768) {
    $('#bo_list .tbl_head01 tbody tr').click(function() {
      window.location = $(this).find('a').attr('href');
    });
  }
}
</script>

이 질문에 댓글 쓰기 :

답변 3


...
   $('#bo_list .tbl_head01 tbody tr').off('click');
   if($(window).width() < 768) {
...

이벤트 중복까지 제거 하려면 이렇게 하시는게 좋겠네요

아래 코드처럼 하면 되나요?

function checkSize(){
  $('#bo_list .tbl_head01 tbody tr').off('click');
  if($(window).width() < 768) {
    $('#bo_list .tbl_head01 tbody tr').click(function() {
      window.location = $(this).find('a').attr('href');
    });
  }
}





function checkSize(){
  if($(window).width() < 768) {
    $('#bo_list .tbl_head01 tbody tr').click(function() {
      window.location = $(this).find('a').attr('href');
    });
  }
  if($(window).width() > 768) {
    $('#bo_list .tbl_head01 tbody tr').off('click');
  }
 
}

이렇게 해주시면 되겠네요.

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 8
© SIRSOFT
현재 페이지 제일 처음으로