테스트 사이트 - 개발 중인 베타 버전입니다

jquery focusin 질문이 있습니다 채택완료

병원에서일해요 5년 전 조회 1,615

해당 버튼에 focusin이 됐을때

 

이 포커스가 클릭으로 들어온건지 탭으로 들어온건지 확인을 할 수 있는 방법이 무엇이 있을까요?

 

$("button").on("focusin", function(){

        // 클릭으로 포커스시

 

        // 탭으로 포커스시

 

})

 

위와 같이 접근 방법에 따라 분기를 해줘야하는데 검색을 해도 원하는 답을 찾기가 힘드네요

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트
검은냥냥이

완벽하지 않습니다.

이런식으로라도 분류해서 진행하시면 될듯 싶습니다.

더 정확한거는 이벤트 콘솔로 객체 확인해서 다른 부분으로 분류 가능한지는 안봤습니다.

let check = false;

 

// 버튼 안에 마우스가 있을때

$("button").on("mouseenter", function () {

check = true;

}

 

// 버튼 안에 마우스가 없을때
$("button").on("mouseleave", function () {

check = false;

}

 

// 클릭 및 이외 이벤트 체크

$("button").on("focusin", function () {

if (check) {

클릭으로 들어온 이벤트

return false;

}

 

클릭 이외로 들어온 이벤트

}

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

병원에서일해요
5년 전
감사합니다 해당방법으로하니까 원하는대로 결과가 나왔네요

댓글을 작성하려면 로그인이 필요합니다.

5년 전

mouseover 와 click 이벤트로 분리하여 처리하는 것을 추천합니다.

 

$("button").on("mouseover", function(){
});

 

$("button").on("click", function(){
});

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

click 이벤트로 잡으면 되는데

아마 포커스와 충돌이 날거에요.

그럴때 아래 링크 참조하시면 됩니다.

https://vnthf.github.io/blog/jquery-focusout%EA%B3%BCclick-event%EC%B6%A9%EB%8F%8C/

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인