반응형
자바스크립트를 연습하다보면 생각보다 자주 사용되는 스크립트 중 하나인것 같다.
매번 찾았다가 이번에는 이해한것을 정리해서 올려놓으려고 한다.
01_ 자바스크립을 이용한 자식요소 찾기(childNodes)
HTML
<ul id="list-wrap">
<li id="list-1">aaa</li>
<li id="list-2">bbb</li>
<li id="list-3">ccc</li>
</ul>
JS
let parent = document.querySelector('#list-wrap')
// 변수에 parent 요소를 저장
let allChildren = parent.childNodes; // 모든 자식들 찾아 변수에 담기
let first = parent.firstChild; // 첫번째 자식들 찾아 변수에 담기
let last = parent.lastChild; // 마지막 자식 찾아 변수에 담기
console.log(allChildren);
console.log(first);
console.log(last);
02_자바스크립트를 이용한 부모요소 찾기 (parentNode)
HTML
<ul id="list-wrap">
<li id="list-1">aaa</li>
<li id="list-2">bbb</li>
<li id="list-3">ccc</li>
</ul>
JS
let childFirst = document.querySelector("#list-1");
//자식요소를 선택해 변수에 저장
let parent = childFirst.parentNode;
//변수 설정한 자식요소의 부모를 찾는다.
console.log(parent);
03_자바스크립트 형제 찾기 (sibling)
HTML
<ul id="list-wrap">
<li id="list-1">aaa</li>
<li id="list-2">bbb</li>
<li id="list-3">ccc</li>
</ul>
JS
let second = document.querySelector("#list-2");
// 두번째 자식을 변수에 담는다.
let preSibling = second.previousElementSibling;
// 변수에 담은 요소의 이전 형제를 찾아 변수에 저장
let nexSibling = second.nextSibling;
// 변수에 담은 요소의 다음 형제를 찾아 변수에 저장
// * 이전/다음 형제에 다른 메소드를 이용해서 console.log 차이점을 비교해봤다.
console.log(preSibling);
console.log(nexSibling);
04_부모요소의 이전 형제를 찾을때
HTML
<ul id="box01">
<li id="one">one</li>
<li id="two">
two
<p id="current" style="color: chocolate;">here</p>
</li>
<li id="three">three</li>
</ul>
JS
let me = document.querySelector("#current");
//현재 위치한 영역을 찾아 변수 me에 담기
let answer = me.parentNode.previousElementSibling; //answer = one
// me의 부모 요소의 형제요소 찾아 answer 변수에 담기
console.log(answer);
반응형
'프론트엔드 > Javascript' 카테고리의 다른 글
자바스크립트 함수 사용해서 rest 파라미터 / for of 배열 만들기 (0) | 2021.05.10 |
---|---|
자바스크립트 반복문 while문, do while문, for문 (0) | 2021.05.09 |
함수 표현식 VS 함수 선언식 구분하기 (0) | 2021.03.11 |
[jQuery] 기존 요소의 내부 컨텐츠 변경 - .html() VS .text() 차이점 (0) | 2021.01.21 |
[jQuery] 요소의 추가 .append/.prepend/.before/.after/.wrap/.wrapAll (0) | 2021.01.21 |