※ 본 내용은 해당 교재를 참고하여 공부한 내용과 본인의 생각을 정리한 글입니다.
https://www.yes24.com/Product/Goods/105608999
바닐라 자바스크립트 - 예스24
실무 역량까지 한 번에 잡을 수 있는바닐라 자바스크립트 이론서자바스크립트는 이제 브라우저를 넘어 웹 애플리케이션뿐만 아니라 마이크로 컨트롤러까지 점점 사용하는 곳이 늘어나고 있다.
www.yes24.com
01.03 HTML 내용 변경
앞에서는 DOM 요소에 접근하여 속성 정보에 대한 값을 다루었다면 여기서는 html 요소에 대해 다룬다.
● innerHTML
→ HTML의 특정 위치에 새로운 HTML을 삽입할 때 사용한다.
● innerText
→ innerHTML과 유사하지만 텍스트 내용만 삽입이 가능하다.
● insertAdjacentHTML()
→ DOM 요소를 기준으로 새로운 HTML을 삽입한다.
2개의 파라미터 사용
1. DOM 요소를 삽입할 위치
ㆍafterbegin : 접근한 DOM 요소의 자식 노드의 제일 첫 번째 노드로 삽입
ㆍafterend : 접근한 DOM 요소 바로 다음 노드로 삽입
ㆍbeforebegin : 접근한 DOM 요소 바로 직전 노드로 삽입
ㆍbeforeend : 접근한 DOM 요소의 자식 노드의 제일 마지막 노드로 삽입
2. 삽입할 DOM 요소에 대한 문자열
● insertAdjacentText()
→ insertAdjacentHTML과 유사하지만 텍스트 내용만 삽입이 가능하다.
● remove()
→ HTML 요소를 삭제할 때 사용
설명으로는 와닿지 않으니 예제 코드를 보면서 이해해보자.
See the Pen JS_01_ Basic concept_change by dk k (@dk-k) on CodePen.
01.04 DOM 이벤트
웹 페이지를 이용하면 웹 화면과 사용자 사이에서 수많은 상호작용(interraction)이 나타난다. 예를 들어 버튼을 클릭한다든지, 마우스를 스크롤 한다든지, 검색을 위해 검색 키워드를 입력하는 행동 등이 이에 해당된다.
이렇게 사용자가 웹 페이지를 이용하면서 행하는 액션을 이벤트라고 한다.
● click 이벤트(onclick)
● change 이벤트(onchange)
● focus 이벤트(onfocus)
● blur 이벤트(onblur)
→ DOM 요소에 마우스가 포커스 되었다가 다른 DOM 요소로 이동할 때 발생하는 이벤트
● key 이벤트(onkeydown, onkeypress, onkeyup)
→ 사용자가 입력창에서 키보드를 입력할 때 발생하는 이벤트
● scroll 이벤트(onscorll)
● touch 이벤트
→ 스마트폰, 태블릿 같은 모바일이나 터치가 가능한 PC에서 화면을 터치하면 발생하는 이벤트
● load 이벤트(onload)
→ 웹 페이지의 모든 HTML DOM 요소가 로딩되면 발생하는 이벤트
● unload 이벤트(onunload)
→ 웹 페이지에서 다른 페이지로 이동하거나 브라우저 창을 닫을 때 발생하는 이벤트
addEventListener 위치가 태그보다 위에 있었을 경우 에러 발생
See the Pen Untitled by dk k (@dk-k) on CodePen.
01.05 DOM Style
태그의 style 속성을 가져오거나 새로운 스타일 속성을 추가할 수 있습니다.
스타일의 경우 따로 설명은 없고 예제 코드를 보면서 이해해보자.
See the Pen S_01_ Basic concept_style by dk k (@dk-k) on CodePen.
이것으로 기본이 되는 문법 정리는 끝났다. 워드에 정리할 때는 브라우저의 렌더링 과정도 넣었는데 이것은 따로 작성하려고 한다. 자바스크립트를 공부하면서 jQuery를 안쓰니 이제는 제이쿼리가 더 어색해지긴 했는데.. 무슨 코드인지 못 읽은 정도는 아니니 상관없을듯함
'02. JavaScript > 01. 기본개념, 문법 (ES6)' 카테고리의 다른 글
JavaScript_02. 문법_04_Rest Parameter (0) | 2023.11.17 |
---|---|
JavaScript_02. 문법_03_Default Function Parameter (0) | 2023.11.17 |
JavaScript_02. 문법_02_Scope (0) | 2023.11.17 |
JavaScript_02. 문법_01_this 키워드 (0) | 2023.11.17 |
JavaScript_01. 기본개념_HTML_DOM 1 (0) | 2023.11.16 |