통합검색

Javascript

[jQuery] e.target 추적하여 자기 자신이 아닌 엘리먼트를 클릭했을 때 hide() 처리

  • 2022.12.12 16:38:14


jQuery로 show() 와 hide()되는 toggle 메뉴를 만든 경우
toggle 메뉴 외 body내 '나 자신이 아닌' 다른 엘리먼트를 클릭하는 경우 toggle로 열린 엘리먼트를 hide() 시킬 수 있다.
마우스를 클릭하는 경우 e.target을 통해 클릭 event의 target 내에 '나 자신'이 있는지 검사하고 target 내에 없는 경우 hide() 시킨다.


[!]jQuery[/!] 
$me = $('#this-me'); //나 자신
$('body').click(function(e){
    if($me.has(e.target).length == 0 && !$me.is(e.target)){
        $me.hide();
    }
});