VS Code

Programming/JavaScript

[JavaScript] BOM: 링크 조작, 이미지 조작, 다량의 요소의 이벤트 처리 (일괄 처리)

🍁링크 조작 링크 블로그 document 아래에 forms가 없기 때문에 할아버지가 손자를 자식으로 취급하는 말이 안 되는 상황이 발생한다. 이렇게 폼이 없는 상황에서는 all을 사용해서 접근한다. all을 사용하여 접근 원래는 블로그 링크를 클릭하면 블로그로 이동하지만, 버튼을 클릭하면 링크가 [JavaScript] BOM과 DOM: HTML 계층 구조 글로 이동하는 걸로 바뀌게 했다. 그런데 사용자는 링크가 바뀌었는지 알기 어렵다. 이럴 때 풍선 도움말을 활용할 수 있다. BOM //BOM document.links['link1'].href = 'https://isaac-christian.tistory.com/entry/JavaScript-BOM%EA%B3%BC-DOM'; document.links[..

Programming/JavaScript

[JavaScript] Collection (컬렉션)

🍁Collection 내장 배열은 곧 컬렉션을 의미한다. 컬렉션은 태그에 접근하기 위한 도구로, 데이터를 저장하고 조작하는 여러 구조를 나타낸다. 자바스크립트는 문서 내용(HTML)을 기반으로 자동 생성되는 배열을 제공한다. 자바스크립트에서 사용하는 데이터 자료구조는 인덱스(index) 기반의 컬렉션, 키(key) 기반의 컬렉션이 있다. window.document.images window.document.links window.document.anchors window.document.forms window.document.forms[index].elements window.document.all window.document.images 이미지 가장 꼭대기의 window 객체는 유일하기 때문에 생략할 ..

Programming/JavaScript

[JavaScript] BOM: history 객체

🍁history 객체 history 객체에는 브라우저의 발자취가 남아 있다.👣 발자취는 브라우저가 방문한 탐색 기록을 의미한다. 그리고 이 탐색 기록을 접근하는 게 history 객체이다. 탐색 기록이 필요한 이유는 사용자가 전에 방문한 페이지로 돌아가는 등의 페이지 이동이 페이지를 기억하고 있어야 가능하기 때문이다. 뒤로 가기/앞으로 가기 history 객체 window.history.go(-2); go 함수 안에는 양수값과 음수값을 넣을 수 있다. go 함수에는 숫자만큼 페이지를 뒤로 가거나 앞으로 갈 수 있다. 페이지 이동 기록 ex19 > 네이버 > 구글 > ex19 > 다음 > 쿠팡 사용자가 위와 같이 페이지를 이동한 기록이 history 객체에 기록된다. 만약 위와 같은 경로를 통해 쿠팡 페이..

Programming/JavaScript

[JavaScript] BOM: location 객체

🍁location 객체 location 객체는 현재 창의 페이지 주소(URL)와 관련된 객체이다. 읽기 (현재 페이지) console.log(window.location.href); 읽기를 하면 현재 페이지의 주소를 읽어온다. 쓰기 (페이지 이동) window.location.href = 'https://isaac-christian.tistory.com/'; window.location.assign('https://isaac-christian.tistory.com/'); 자바스크립트에서는 window.location.href으로 페이지를 이동한다. assign 함수로 페이지 이동을 지원하지만, href를 더 많이 사용한다. 새로고침 window.location.reload(); //새로고침(F5) 전역 ..

Programming/JavaScript

[JavaScript] BOM: screen 객체

🍁screen 객체 screen 객체는 화면 정보를 제공한다. availWidth, availHeight console.log(window.screen.availWidth); console.log(window.screen.availHeight); 위 숫자는 현재 보고 있는 모니터의 해상도를 의미한다. 내가 만든 페이지가 어떤 화면의 크기로 보이고 있느냐에 따라 디자인을 다르게 만들 수 있기 때문에 해상도가 중요하다. colorDepth console.log(window.screen.colorDepth); 24bit 컬러를 지원한다는 의미에서 24가 출력된다. 대부분 24bit 컬러를 지원하므로 큰 의미는 없다. orientation console.log(window.screen.orientation); ..

Programming/JavaScript

[JavaScript] BOM: window 객체

🍁window 객체 window.open(URL, name, options); URL: 새 창의 URL name: 새 창의 이름 options: 새 창 옵션들 window로 창을 새로 만들었을 때 만들어진 창을 자식창이라고 한다. 옵션들 사이는 띄어쓰기를 해도 되고, 콤마를 찍어도 된다. 자식창 띄우기 window 객체 창 제어하기 자식 페이지 크기를 지정해 주었기 때문에 탭으로 새 창이 생기지 않고 새로운 창으로 생긴다. 빈 문자열로 이름을 지정해주지 않을 수도 있다. 이름을 주지 않으면 행동이 달라진다. name 빈 문자열로 지정 window.open('ex16_child.html', '', 'width=500 height=300'); 이름을 빈 문자열로 지정하면 여러 창을 띄울 수 있다. 이름을 지..

Programming/JavaScript

[JavaScript] HTML 태그의 속성 제어하기

🍁HTML 태그의 속성 제어하기 태그를 조작한다는 건 다음의 두 가지의 의미를 가진다. 첫 번째는 속성의 값을 바꾼다는 것이고, 두 번째는 PCDATA(내용물)를 조작한다는 것이다. 텍스트 박스 조작 txt.프로퍼티 HTML의 대부분의 속성들은 JavaScript에서 동일한 이름의 프로퍼티로 제공한다. 단, HTML 속성명이 복합어일 경우 JavaScript에서는 캐멀 표기법🐫으로 제공한다. 프로퍼티의 종류로는 value 등이 있으며, 대부분의 프로퍼티들은 입출력(읽기, 쓰기)이 모두 된다. 일부 프로퍼티만이 읽기 또는 쓰기 전용이다. 텍스트 박스의 속성들을 조작해 보도록 하자!👉 쓰기 작업 txt1.value = 'Isaac'; //쓰기 읽기 작업 alert(txt1.value); //읽기 복합어 tx..

Programming/JavaScript

[JavaScript] Event: 키 관련 이벤트

🍁키 관련 이벤트 키 관련 이벤트는 onkeyXXX 형태를 가진다. 보편적으로 keydown을 사용한다. keyup을 사용하는 경우는 방금 누른 문자가 필요한 업무를 할 때이다. onkeydown 키를 눌렀을 때 발생한다. 키 이벤트 키를 누르고 있으면 연속 입력된다. function m1() { //console.log('keydown'); console.log(event.keyCode); //입력한 문자 코드 } 입력된 (물리)키는 구분이 가능하지만, 입력된 문자(같은 키에 할당된 a와 A)는 구분할 수 없다. keydown은 입력된 문자는 중요하지 않을 때, 물리키를 구분하는 용도로 사용한다. 모든 키에 반응하므로 keypress보다 keydown을 많이 사용한다. keypress는 Shift, C..

Isaac-Christian
'VS Code' 태그의 글 목록 (5 Page)