전체 글 77

[Javascript] 행(row)과 열(column)을 그리는 프로그램

프로그램을 만들기 전에 table, td, tr 요소의 관계를 생각해야 한다. td는 tr 요소에 속하며 tr요소는 table 요소에 속한다. 따라서 부모 노드와 자식 노드의 관계를 생각하면 될 것이다. 먼저 프로그램의 뼈대를 구성하는 CSS부터 작성한다. CSS를 작성했다면 화면을 표시하는 HTML을 작성한다. 행 열 작성 drawTable(); 뒤에 return false;를 써둔 이유는 drawTable()함수를 한번만 실행하기 위함이다. 그리고 value는 1로 초기화를 시켜준다. 이제 표를 그리기 위한 Javascript를 작성하기만 하면 프로그램은 완성이다. Javascript를 작성하기 위한 의사 코드는 다음과 같다. 1. table 요소 노드를 만든다. 2. 입력한 행의 개수만큼 반복하면서..

[Javascript] DOM에서 노드 삭제하기

노드를 삭제할 때 먼저 기억해둬야 할 것은 부모 노드에서 자식 노드를 삭제해야 한다는 것이다. 즉, 삭제해야 할 노드가 있다면 반드시 부모 노드부터 찾아야 한다는 뜻이다. * parentNode 프로퍼티 parentNode 프로퍼티는 현재 노드의 부모 노드에 접근해서 부모 노드의 요소 노드를 반환한다. - 기본형 : 노드.parentNode 예를 들어 li 노드의 2번째 요소의 부모 노드를 알고 싶다고 하면 document.querySelectorAll("li")[1].parentNode; 다음과 같은 코드로 부모 노드를 찾을 수 있다. * removeChild() 메서드 removeChild() 메서드는 자식 노드를 삭제하는 역할을 한다. 부모 노드만 찾는다면 removeChild() 메서드를 사용하는..

[Javascript] DOM에서 노드 추가하기

* 요소 노드 만들기 - createElement() 메서드 DOM에 새로운 요소를 추가할 때 가장 먼저 할 일은 요소 노드를 만드는 것이다. 이 때 사용하는 메서드는 createElement()인데 괄호 안에 해당하는 요소 노드를 만들면 된다. - 기본형 : document.createElement(노드명) var newP = document.createElement("p"); // p 요소 노드 만들기 하지만 createElement() 메서드는 새로운 노드를 만들 뿐 아직 웹 문서에 새로운 노드를 추가한 것은 아니다. 이제 태그의 내용에 해당하는 텍스트 노드도 만들어야 한다. * 텍스트 노드 만들기 - createTextNode() 메서드 새로운 요소 노드를 만들었다면 그 다음은 내용을 담는 텍스트..

[Javascript] event 객체의 프로퍼티와 메서드

구분 설명 프로퍼티 altKey 이벤트가 발생할 때 Alt키를 눌렀는지 여부를 boolean값으로 반환합니다. button 마우스에서 누른 버튼의 키값을 반환합니다. charCode keypress 이벤트가 발생할 때 어떤 키를 눌렀는지 유니코드값으로 반환합니다. clientX 이벤트가 발생한 가로 위치를 반환합니다. clientY 이벤트가 발생한 세로 위치를 반환합니다. ctrlKey 이벤트가 발생했을 때 Ctrl키를 눌렀는지 여부를 boolean값으로 반환합니다. pageX 현재 문서 기준으로 이벤트가 발생한 가로 위치를 반환합니다. pageY 현재 문서 기준으로 이벤트가 발생한 세로 위치를 반환합니다. screenX 현재 화면 기준으로 이벤트가 발생한 가로 위치를 반환합니다. screenY 현재 화..

[Javascript] DOM 요소에 접근하고 속성 가져오기

* id 선택자로 접근하는 getElementById() 메서드 - 기본형 : 요소명.getElementById("id명") document.getElementById("heading") // id값이 heading인 요소에 접근 * class 값으로 접근하는 getElementsByClassName() 메서드 - 기본형 : 요소명.getElementByClassName("class명") document.getElementByClassName("bright") // class = "bright" 속성이 있는 요소를 모두 검색 * 태그 이름으로 접근하는 getElementsByTagName() 메서드 - 기본형 : 요소명.getElementsByTagName("태그명") document.getElement..