js 코드를 짜다보면 특정한 이벤트 발생을 막기위해 e.preventDefault() 함수를 쓰곤 한다.
최근 개발중 modal 버튼 두개가 레이어상 겹칠일이 생겼다.
그런데 상위 레이어의 버튼을 누르니 두개의 modal 페이지가 동시에 떴다.
이 문제를 해결하기 위해 뜨지 말아야할 modal의 show 이벤트가 발생했을때 e.preventDefault() 함수를 적용함으로 뜨지 않게 하였다.
하지만 이후 e.preventDefault() 함수가 적용된 모달은 버튼을 눌러도 뜨지 않는 문제가 발생했다.
이 문제를 해결하기 위해서 e.preventDefault()를 풀어야 하는 문제에 직면하게 되었는데,
해당 방법을 찾느라고 시간을 많이 쏟았다.
방법은 해당 모달에 unbind() 함수를 써주면 된다.
자세한 해결방법은 아래링크에 나와있다.
https://stackoverflow.com/questions/41765092/opposite-of-e-preventdefault-and-e-stoppropagation
'Javascript' 카테고리의 다른 글
p5.js에서 drop shadow 효과 넣기 (0) | 2017.09.21 |
---|---|
convolution 필터를 구현할때 주의할 사항 (0) | 2017.09.15 |
progressive web app 정리글 (0) | 2017.08.28 |
webpack 업데이트 사항 (0) | 2017.08.21 |
yyyy-mm-dd 형식으로 날짜 데이터 쉽게 꺼내는 방법 (0) | 2017.08.04 |
댓글