Client
185
2021-09-29 00:36:08
3
127

제이쿼리 one 이벤트 초기화 방법


제이쿼리 one 이벤트를 사용하여 한 번만 작동하도록 구현했습니다.

그 후 취소 버튼을 누르면 다시 사용할 수 있도록 하고 싶습니다.

one 이벤트를 해제하는 방법이 있나요?

0
  • 답변 3

  • antop
    1k
    2021-09-29 01:10:05 작성 2021-09-29 01:15:01 수정됨

    다르게 생각해서 on으로 항상 동작하게 하고 한번 실행되면 다시 실행 안되게 하는건 어떨까요?


    var flag = false;
    
    $('...').on('click', function() {
      if (flag) return;
      // do somthing
      flag = true;
    });
    
    $('엑스버튼').onclick(function() {
      // do somthing
     flag = false;
    });
    
    


  • antop
    1k
    2021-09-29 01:14:51

    원하시는대로 하려면... (JS 안한지 오래라 맞는지는 모르겠네요


    var doClick = function() {
      // do somthing
    }
    
    $('...').one('click', doClick);
    
    $('엑스버튼').onclick(function() {
      // do somthing
      // 이벤트 리스너 중복 등록 방지하기!! (그럴 필요가 없는 구조라면 패스?)
      $('...').one('click', doClick);
    });


  • Client
    185
    2021-09-29 01:21:15

    antop // 정말로 감사드립니다. 덕분에 해결하였습니다.

  • 로그인을 하시면 답변을 등록할 수 있습니다.