// 더블클릭 구분을 위한 변수
var clickState = null;
function btn_OnClick(){
// 원클릭 구분
if(clickState == null){
clickState = setTimeout("btn_OnClick()", 200);
}else{
ClearClickState();
alert("원클릭");
}
}
function btn_OnDbClick(){
ClearClickState();
alert("더블클릭");
}
function ClearClickState(){
clearTimeout(clickState);
clickState = null;
}
한 오브젝트에서 onclick dblonclick둘다 쓰려면 이거 참고해서 하라는데
이해가 좀 안되서 질문할게
어떤 오브젝트를 클릭해서 btn_OnClick() 이 실행되면 clickState 값이 null이니까 if문 통과해서 clickState 값에
0.2초뒤setTimeout("btn_OnClick()", 200); 가 실행되면서 어떤 정수가 들어가고 btn_OnClick() 가 한번더 호출되는거야?
스크립트에 이거 넣고 한번 해보니까 한번 클릭하고 좀 기다렸다 한번 더 클릭해야 alert("원클릭") 가 작동하더라고
그리고 btn_OnDbClick() 이게 실행되면 ClearClickState() 이 함수로 clickState 값 날려버려서 btn_OnClick() 를
실행 못하게 하는거 같긴한데 막상 돌려보면 btn_OnClick() 이랑 btn_OnDbClick() 이 같이 실행되버려
내가 잘못이해하거나 고쳐야 할거 있으면 좀 알려줄레
prevent default 어쩌고