>  기사  >  웹 프론트엔드  >  XML/HTML_javascript 기술에 대한 JavaScript 작업에 일반적으로 사용되는 개체 속성 모음

XML/HTML_javascript 기술에 대한 JavaScript 작업에 일반적으로 사용되는 개체 속성 모음

WBOY
WBOY원래의
2016-05-16 15:34:251053검색

노드 개체 속성

childNodes - 노드에서 하위 노드로 노드 목록을 반환합니다

firstChild - 노드의 첫 번째 하위 노드를 반환합니다.
lastChild - 노드의 마지막 하위 노드를 반환합니다.

nextSibling - 노드 바로 뒤에 있는 형제 노드를 반환합니다.

nodeName - 유형에 따라 노드 이름을 반환합니다.
nodeType - 노드 유형을 반환합니다.
nodeValue - 노드 유형에 따라 노드 값을 설정하거나 반환합니다.

ownerDocument - 노드(문서 객체)의 루트 요소를 반환합니다.

parentNode - 노드의 상위 노드를 반환합니다.

previousSibling - 노드 바로 앞에 있는 형제 노드를 반환합니다.

text - 노드 및 해당 하위 항목의 텍스트를 반환합니다(IE만 해당).

xml - 노드 및 해당 하위 항목의 XML을 반환합니다(IE만 해당).

노드 객체의 메서드

appendChild() - 노드의 하위 노드 목록 끝에 새 하위 노드를 추가합니다.

cloneNode() - 노드를 복사합니다.

hasChildNodes() - 현재 노드에 하위 노드가 있는지 여부를 결정합니다.

insertBefore() - 지정된 하위 노드 앞에 새 하위 노드를 삽입합니다.

normalize() - 인접한 Text 노드를 병합하고 빈 Text 노드를 삭제합니다.

removeChild() - 현재 노드의 지정된 하위 노드를 제거하고 반환합니다.

replaceChild() - 하위 노드를 새 노드로 바꿉니다.

IE6 전용

selectNodes() - XPath 표현식을 사용하여 선택 노드를 쿼리합니다.

selectSingleNode() - XPath 쿼리와 일치하는 노드를 찾습니다.

transformNode() - XSLT를 사용하여 노드를 문자열로 변환합니다.

transformNodeToObject() - XSLT를 사용하여 노드를 문서로 변환합니다.

NodeList 객체

length - 노드 목록의 노드 수를 반환합니다.

item() - 노드 목록에서 지정된 인덱스 번호에 있는 노드를 반환합니다.

예:

자바스크립트 코드

xmlDoc = loadXMLDoc(“books.xml”); 
var x = xmlDoc.getElementsByTagName(“title”); 
document.write(“title element:” + x.length); 

출력: 제목 요소:4

자바스크립트 코드

var y = xmlDoc.documentElement.childNodes; 
document.write(y.item(0).nodeName); 

출력: 도서

NamedNodeMap 객체

length - 목록의 노드 수를 반환합니다.

getNamedItem() - 지정된 노드를 반환합니다. (이름으로)

item() - 지정된 인덱스 번호에 있는 노드를 반환합니다.

removeNamedItem() - 지정된 노드를 제거합니다(이름 기준).

예:

자바스크립트 코드

xmlDoc = loadXMLDoc(“books.xml”); 
var x = xmlDoc.getElementsByTagName(“book”); 
document.write(x.item(0).attributes.length); 

출력: 1

자바스크립트 코드

document.write(x.item(0).attributes.getNamedItem(“category”); 

출력: 요리

자바스크립트 코드

x.item(0).attributes.removeNamedItem(“category”); 

첫 번째 책 요소의 카테고리 속성 삭제

문서 개체는 전체 XML 문서를 나타냅니다.

문서 개체의 속성입니다.

async - XML ​​파일 다운로드를 동기식으로 처리해야 하는지 여부를 지정합니다.

childNodes - 문서의 하위 노드인 노드 목록을 반환합니다.

doctype - 문서와 연결된 문서 유형 선언을 반환합니다.

documentElement - 문서의 하위 노드를 반환합니다.

firstChild - 문서의 첫 번째 하위 노드를 반환합니다.

implementation — 이 문서를 처리하는 DOMImplementation 객체를 반환합니다. (IE에는 없습니다)

lastChild - 문서의 마지막 하위 노드를 반환합니다.

nodeType - 노드 유형을 반환합니다.

nodeName - 유형에 따라 노드 이름을 반환합니다.

nodeValue - 노드 유형에 따라 노드 값을 반환합니다.

text - 노드 및 해당 하위 항목의 텍스트를 반환합니다(IE만 해당).

xml - 노드 및 해당 하위 항목의 XML을 반환합니다(IE만 해당).

문서 개체의 메서드

createAttribute(att_name) - 지정된 이름을 가진 속성 노드를 생성하고 새 속성 객체를 반환합니다.
createCDATASection(data) - CDATA 섹션 노드를 생성합니다.
createComment(data) - 설명 노드를 생성합니다.
createDocumentFragment - 빈 DocumentFragment 객체를 생성하고 이 객체를 반환합니다.
createElement(node_name) - 요소 노드를 생성합니다.
createEntityReference(name) - EntityReference 객체를 생성하고 이 객체를 반환합니다. (IE에만 해당)
createTextNode(data) - 텍스트 노드를 생성합니다.
getElementById(elementid) - 지정된 고유 ID를 가진 요소를 찾습니다.
getElementsByTagName(node_name) - 지정된 이름을 가진 모든 요소 노드를 반환합니다.

예:

자바스크립트 코드

var xmlDoc = loadXMLDoc("book.xml");  
xmlDoc.async = false; 
var book = xmlDoc.getElementsByTagName("book"); 
var newtext1="Special Offer & Book Sale"; 
var newCDATA=xmlDoc.createCDATASection(newtext1); 
book[0].appendChild(newCDATA); 
var newtext2="Revised September 2006"; 
var newComment=xmlDoc.createComment(newtext2); 
book[0].appendChild(newComment); 
var var newel=xmlDoc.createElement('edition'); 
var newtext3=xmlDoc.createTextNode('First'); 
newel.appendChild(newtext3); 
book[0].appendChild(newel); 
document.write("<xmp>" + xmlDoc.xml + "</xmp>"); 

Element 对象的属性
attributes—返回元素的属性的NamedNodeMap
childNodes—返回元素的子节点的NodeList
firstChild—返回元素的首个子节点。
lastChild—返回元素的最后一个子节点。
nextSibling—返回元素之后紧跟的节点。
nodeName—返回节点的名称。
nodeType—返回元素的类型。
ownerDocument—返回元素所属的根元素(document对象)。
parentNode—返回元素的父节点。
previousSibling—返回元素之前紧跟的节点。
tagName—返回元素的名称。
text—返回节点及其后代的文本。(IE-only)
xml—返回节点及其后代得XML。(IE-only)

Element对象的方法

appendChild(node)—向节点的子节点列表末尾添加新的子节点。
cloneNode(true)—克隆节点。
getAttribute(att_name)—返回属性的值。
getAttributeNode(att_name)—以 Attribute 对象返回属性节点。
getElementsByTagName(node_name)—找到具有指定标签名的子孙元素。
hasAttribute(att_name)—返回元素是否拥有指定的属性。
hasAttributes()—返回元素是否拥有属性。
hasChildNodes()—返回元素是否拥有子节点。
insertBefore(new_node,existing_node)—在已有的子节点之前插入一新的子节点。
removeAttribute(att_name)—删除指定的属性。
removeAttributeNode(att_node)—删除指定的属性节点。
removeChild(node)—删除子节点。
replaceChild(new_node,old_node)—替换子节点。
setAttribute(name,value)—添加新的属性或者改变属性的值。
setAttribute(att_node)—添加新的属性。

Javascript代码

x=xmlDoc.getElementsByTagName('book'); 
for(i=0;i<x.length;i++) 
{ 
attnode=x.item(i).getAttributeNode("category"); 
document.write(attnode.name); 
document.write(" = "); 
document.write(attnode.value); 
document.write("<br />"); 
} 
for(i=0;i<x.length;i++){ 
document.write(x[i].getAttribute('category')); 
document.write("<br />"); 
} 
xmlDoc=loadXMLDoc("/example/xdom/books.xml"); 
x=xmlDoc.getElementsByTagName('book'); 
document.write(x[0].getAttribute('category')); 
document.write("<br />"); 
x[0].removeAttribute('category'); 
document.write(x[0].getAttribute('category')); 
var attnode = x[1].getAttributeNode("category"); 
var y = x[1].removeAttributeNode(attnode); 
document.write("<xmp>" + xmlDoc.xml + "</xmp>"); 
function get_lastchild(n) 
{ 
 x = n.lastChild; 
 while(x.noteType!=1){ 
  x = x.previousSibling; 
 } 
 return x; 
} 
function get_firstChild(n){ 
 x = n.firstChild; 
 whild(x.nodeType!=1){ 
 x=x.nextSibling; 
 } 
 return x; 
} 
xmlDoc=loadXMLDoc("books.xml"); 
x=xmlDoc.getElementsByTagName("book")[0]; 
deleted_node=x.removeChild(get_lastchild(x)); 
document.write("Node removed: " + deleted_node.nodeName); 

Attr对象

Attr 对象表示 Element 对象的属性。

name—返回属性的名称。

nodeName—返回节点的名称,依据其类型

nodeType—返回节点的类型。

nodeValue—设置或返回节点的值,依据其类型

ownerDocument—返回属性所属的根元素(document对象)。

specified—如果属性值被设置在文档中,则返回 true,如果其默认值被设置在 DTD/Schema 中,则返回 false。

value—设置或返回属性的值。

text—返回属性的文本。IE-only。

xml—返回属性的 XML。IE-only。

Text对象的属性

data—设置或返回元素或属性的文本。

length—返回元素或属性的文本长度。

Text对象的方法

appendData(string)—向节点追加数据。

deleteData(start,length)—从节点删除数据。

insertData(start,string)— 向节点中插入数据。

replaceData(start,length,string)—替换节点中的数据。

replaceData(offset)— 把一个 Text 节点分割成两个。

substringData(start,length)— 从节点提取数据。

关于JavaScript操作XML/HTML比较常用的对象属性集锦的全部叙述就到此结束了,更多内容请登陆脚本之家官网了解更多,谢谢。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.