반응형
Notice
Recent Posts
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- javascript 자식 노드 추가
- 셀렉트 태그 링크
- 쏜살치킨
- 포토샵 핸드툴 오류
- 애드센스
- 당연해?뭐가?
- 종묘대제
- 크리에이터링크 이미지클릭
- 자바스크립트 타이머 만들기
- 대한제국역사관
- 매일두유
- 자바스크립트 링크
- html 다운로드 버튼 만들기
- 포토샵 핸드툴 단축키
- 덕수궁 석조전
- css변수
- 당연해?왜?
- css 화면이동
- 일러스트 스페이스바 오류
- javascript 자식 노드 삭제
- 크리에이터링크 상세페이지
- 포토샵 스페이스바 오류
- 클린 서구
- 일러스트 핸드툴 오류
- 후두골이형성증
- 강아지 발작
- 크리에이터링크 이미지링크
- 다른 사이트로 연결
- css사칙연산
- javascript 자식 노드 복사
Archives
- Today
- Total
열정과 게으름 사이
자바스크립트 특정 영역 외 클릭하면 닫기 본문
자동재생 슬라이드가 있어서 이벤트 객체가 중복되서 찾아졌다.
그래서 먼저 제외하는 작업부터 해줬다.
let gnbSlide = false;// 슬라이딩 메뉴가 열려 있는지 확인
//----------메뉴 슬라이딩 이벤트-----//
gnbBtn.addEventListener('click', function(){
nav.classList.toggle('slide');
return gnbSlide = true;
});
//--- 메뉴 영역외 클릭시 메뉴 닫기---//
document.addEventListener('click',function(e){
if(gnbSlide == true){ //슬라이드 메뉴가 열려 있을때
if(e.target.id != 'loopBtn'){ //e.target이 슬라이딩 이미지 재생 버튼이 아니면
let tgEl = e.target;
let header = tgEl.closest('#header');//조상중 #header를 찾음-버튼이 header안에 있을 경우//
if(!header){ //hdader이 조상이 아니면 닫기//
nav.classList.remove('slide');
return gnbSlide = false;
}
}
}
});
event.target 은 이벤트가 일어난 요소를 반환하고.
event.currentTarget 은 이벤트가 바인딩되어 있는 요소를 반환한다.
<div>
<p> </p>
</div>
$('div').click(function(e){
console.log(e.target);
console.log(e.currentTarget);
});
출력 :e.target: p
출력 :e.currentTarget: div
$('p').click(function(e){
console.log(e.target);
console.log(e.currentTarget);
});
출력 :e.target: p
출력 :e.currentTarget: p
반응형
'공부 메모 > javaScript' 카테고리의 다른 글
자바스크립트로 index() 구현 (0) | 2021.01.28 |
---|---|
간단한 프레시그바 (0) | 2021.01.23 |
팝업 목록. (0) | 2020.12.31 |
form에서 enter키로 전송 될 때/유효성 검사 (0) | 2020.12.03 |
윤년 계산& 14세 미만 가입방지. (0) | 2020.11.28 |
Comments