教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

UI培訓(xùn)實戰(zhàn)教程js中dom操作總結(jié)

更新時間:2015年12月29日15時14分 來源:傳智播客UI培訓(xùn)學(xué)院 瀏覽次數(shù):

 
 

1.1   直接引用結(jié)點

1.document.getElementById(id);
在文檔里面通過id來找結(jié)點
 
2.document.getElementsByTagName(tagName);
返回一個數(shù)組,包含對這些結(jié)點的引用
如:document.getElementsByTagName("span");將返回所有類型為span的結(jié)點

1.2   間接引用結(jié)點

1.element.childNodes
返回element的所有子結(jié)點,可以用element.childNodes[i]的方式來調(diào)用
element.firstChild=element.childNodes[0];
element.lastChild=element.childNodes[element.childNodes.length-1];
 
2.element.parentNode
引用父結(jié)點
 
3.引用兄弟節(jié)點
element.nextSibling; //引用下一個兄弟結(jié)點
element.previousSibling; //引用上一個兄弟結(jié)點
 

1.3   三.獲得結(jié)點信息

1.nodeName屬性獲得結(jié)點名稱
對于元素結(jié)點返回的是標(biāo)記名稱,如:返回的是"a"
對于屬性結(jié)點返回的是屬性名稱,如:class="test" 返回的是test
對于文本結(jié)點返回的是文本的內(nèi)容
 
2.nodeType返回結(jié)點的類型
元素結(jié)點返回1
屬性結(jié)點返回2
文本結(jié)點返回3
 
3.nodeValue返回結(jié)點的值
元素結(jié)點返回null
屬性結(jié)點返回undefined
文本結(jié)點返回文本內(nèi)容
 
4.hasChildNodes()判斷是否有子結(jié)點
 
5.tagName屬性返回元素的標(biāo)記名稱
這個屬性只有元素結(jié)點才有,等同于元素結(jié)點的nodeName屬性
 

1.4   處理屬性結(jié)點

1.每個屬性結(jié)點都是元素結(jié)點的一個屬性,可以通過(元素結(jié)點.屬性名稱)訪問
 
2.利用setAttribute()方法給元素結(jié)點添加屬性
elementNode.setAttribute(attributeName,attributeValue);
attributeName為屬性的名稱,attributeValue為屬性的值
 
3.使用getAttribute()方法獲得屬性值
elementNode.getAttribute(attributeName);
 

1.5   處理文本結(jié)點

innerHTM 和 innerText
獲取節(jié)點中html 獲取節(jié)點中的文本

1.6   改變文檔的層次結(jié)構(gòu)

1.document.createElement()方法創(chuàng)建元素結(jié)點
如:document.createElement("Span");
 
2.document.createTextNode()方法創(chuàng)建文本結(jié)點
如:document.createTextNode(" "); //注:他不會通過html編碼,也就是說這里創(chuàng)建的不是空格,而是字符串
 
3.使用appendChild()方法添加結(jié)點
parentElement.appendChild(childElement);
 
4.使用insertBefore()方法插入子節(jié)點
parentNode.insertBefore(newNode,referenceNode);
newNode為插入的節(jié)點,referenceNode為將插入的節(jié)點插入到這之前
 
5.使用replaceChild方法取代子結(jié)點
parentNode.replaceChild(newNode,oldNode);
注:oldNode必須是parentNode的子結(jié)點,
 
6.使用cloneNode方法復(fù)制結(jié)點
node.cloneNode(includeChildren);
includeChildren為bool,表示是否復(fù)制其子結(jié)點
 
7.使用removeChild方法刪除子結(jié)點
parentNode.removeChild(childNode);
 

1.7   表格的操作

注:ie中無法直接將一個完整的表格結(jié)點插入到文檔中
1.添加行和單元格
var _table=document.createElement("table"); //創(chuàng)建表
table.insertRow(i); //在table的第i行插入行
row.insertCell(i); //在row的第i個位置插入單元格
 
2.引用單元格對象
table.rows[i].cells[i];
 
3.刪除行和單元格
table.deleteRow(index);
row.deleteCell(index);
 

本文版權(quán)歸傳智播客UI培訓(xùn)學(xué)院所有,歡迎轉(zhuǎn)載,轉(zhuǎn)載請注明作者出處。謝謝!
作者:傳智播客UI培訓(xùn)學(xué)院
首發(fā):http://metathetuscanyresort.com/ui 
 
 
 
0 分享到:
和我們在線交談!