본문 바로가기
728x90

DOM18

1.7 Using JavaScript Methods to Create Element and Text Nodes 브라우저가 HTML 문저를 파싱하면, HTML 파일에 있는 내용을 토대로 노드들과 트리를 생성한다. 여기서 브라우저는 HTML 문서를 처음 로딩할때 노드들을 생성한다. 하지만 createElement(), createTextNode()를 사용하면 필요한 노드를 생성할 수 있다. createElement()는 생성하기 원하는 요소를 스트링 인자로 받는다. 이 스트링 인자는 Element 객체의 tagName 프로퍼티가 반환하는 스트링과 같다. createAttribute()는 deprecated되었다. 따라서 createAttribute()대신 getAttribute(), setAttribute(), removeAttribute()를 사용하자. 만약 코멘트 노드를 생성하고 싶다면 createComment(.. 2021. 8. 25.
1.6 Getting a Node's Value nodeValue 프로퍼티는 대부분의 노드타입에 대해 null을 반환 한다. nodeValue는 Text, Comment 노드들로 부터 스트링을 가져오기 위한 프로퍼티로서 오직 Text, Comment 에서만 null을 반환하지 않는다. 2021. 8. 23.
1.5 Identifying the Type and Name of a Node 모든 노드들은 Node에서 상속받은 nodeType과 NodeName 프로퍼티가 존재 한다. 예를 들어 Text노드의 nodeType은 3이고 nodeName은 #text이다. 다음은 5종류의 노드에 대한 nodeType과 nodeName이다. node nodeType nodeName document 9 #document 10 html DocumentFragment 11 #document-fragment a 1 A text 3 #text 노드가 특정 타입인지를 체크하고 싶을때 가장 빠른 방법은 nodeType을 검사하는 것이다. 2021. 8. 21.
1.4 Properties and Methods from Working with Nodes 모든 노드 객체들은 Node 객체로부터 프로퍼티들과 메서드들을 상속받고 있다. 이런 프로퍼티들과 메서드들을 돔을 조작, 검사, 순회할 수 있게 해주는 기본적인 값과 함수이다. 노드 인터페이스에서 제공되는 프로퍼티들과 메서드 외에 다른 관련있는 수 많은 프로퍼티들과 메서드들은 서브노드 인터페이스에 의해 제공된다(e.g. document, HTMLElement, HTML*Element interface). 아래의 Node 프로퍼티들과 메서드들은 모든 노드 객체들이 공통적으로 상속받고 있는 것들과 서브노드 인터페이에서 상속된 것들이다. Node Properties childNodes, firstChild, lastChild, nextSibling, nodeName, nodeType, nodeValue, par.. 2021. 8. 20.
728x90