Web
자바스크립트 드래그 이벤트 가져오기
남자두부 2016. 8. 5. 10:54반응형
원인
테이블 안에 있는 tr에 온클릭 이벤트를 설정해두었다.
tr 안에서 드래그를 하면 온클릭 이벤트가 발생한다.
드래그와 온클릭을 구분해야 한다.
분석
마우스 동작이 끝나면 클릭이 되기 때문에 온클릭 이벤트가 발생하는 것 같다.
초기에는 드래그 이벤트가 동작하면 온클릭 이벤트를 중지시킬 생각이었으나 드래그를 하면 그 드래그 된 정보를 가져올 수 있는 함수를 알게 되었다. 이 방법이 제일 쉬운것 같아 적용시켰다.
드래그 이벤트를 검색하면 드래그 앤 드롭만 나와서 window.getSelection() 함수를 찾는데 시간을 소비했다. 너무 기초적인 함수라 검색이 되질 않는 듯 하다.
결과
온클릭 이벤트가 발생하면 설정된 조건문을 통과한다.
조건문은 드래그된 정보가 있나 없나를 판단한다.
1
1 2 3 4 5 | function fn_Test() { if(window.getSelection() == null || window.getSelection() == "") { alert("Test Msg"); } } | cs |
해석
2) 드래그 된 정보를 가져온다. 가져온 정보가 null 이거나 없는지 판단한다.
*
빈 문자열만 체크해도 정상적으로 작동이 된다. 하지만 견고함을 위해 null 체크를 걸어주었다.
window.getSelection() 함수가 드래그된 정보를 가져오는 함수이다. 잊지 말것.
반응형