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 |
Tags
- 크리에이터링크 상세페이지
- 자바스크립트 타이머 만들기
- 당연해?왜?
- 클린 서구
- 포토샵 스페이스바 오류
- 당연해?뭐가?
- 티스토리챌린지
- 강아지 발작
- 다른 사이트로 연결
- 종묘대제
- 포토샵 핸드툴 오류
- css변수
- css사칙연산
- 자바스크립트 링크
- 매일두유
- 덕수궁 석조전
- 대한제국역사관
- 쏜살치킨
- 애드센스
- javascript 자식 노드 추가
- 오블완
- 일러스트 핸드툴 오류
- 셀렉트 태그 링크
- 후두골이형성증
- javascript 자식 노드 삭제
- javascript 자식 노드 복사
- css 화면이동
- 크리에이터링크 이미지링크
- 크리에이터링크 이미지클릭
- html 다운로드 버튼 만들기
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