日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
深入學習JavaScriptDOM遍歷方法

本文向大家簡單介紹一下DOM遍歷的用法,比如說你有一個給定的元素,你想查找它的父元素、子元素中的一個、它的上一個或下一個節(jié)點兄弟節(jié)點,這就要用到DOM遍歷。

創(chuàng)新互聯(lián)建站為客戶提供專業(yè)的成都做網(wǎng)站、網(wǎng)站設計、程序、域名、空間一條龍服務,提供基于WEB的系統(tǒng)開發(fā). 服務項目涵蓋了網(wǎng)頁設計、網(wǎng)站程序開發(fā)、WEB系統(tǒng)開發(fā)、微信二次開發(fā)、手機網(wǎng)站制作設計等網(wǎng)站方面業(yè)務。

DOM遍歷

基于ID、元素類型、類名查找元素非常有用,但是如果你想基于它在DOM樹中的位置來查找元素該怎么辦?換句話說,你有一個給定的元素,你想查找它的父元素、子元素中的一個、它的上一個或下一個節(jié)點兄弟節(jié)點。例如,采用下面這段零碎的HTML代碼:

清單1:HTML碎片(一個table)

 
 
 
  1. Name EmailAddress Actions
    JoeLennon joe@joelennon.ie Edit 
  2. Delete
  3. JillMacSweeney jill@cdxwcx.com Edit 
  4. Delete

 清單1使用縮進來說明其中每個元素節(jié)點在DOM樹中的位置。在這個實例中,table元素是根元素,有兩個子節(jié)點thead和tbody。thead元素有一個tr子節(jié)點,tr有三個孩子--所有的th元素。tbody元素有兩個tr子節(jié)點,每個tr節(jié)點有三個孩子。在上述每一行的第三個節(jié)點中進一步包含子節(jié)點,都是兩個鏈接標記。

◆正如你知道的那樣,你可以使用一個JavaScript框架的選擇函數(shù)通過ID很輕松的選擇一個元素。在這個實例中,有兩個元素擁有ID,它們是ID分別為row-001和row-002的tr元素。使用Prototype庫選擇第一個tr,可以使用下面的代碼:

 
 
 
  1. vartheRow=$('row-001');

在上一章,你還了解到,基于元素的類型或class使用選擇器來獲取元素。在這個實例中,你可以使用下面的語法來得到所有的td元素。

 
 
 
  1. varallCells=$$('td');

改代碼的主要問題在于它返回了每一個td元素。但是,如果你只想得到ID為row-001的tr的所有td元素該怎么辦?這正是DOM遍歷函數(shù)發(fā)揮作用的地方。首先,讓我們使用原型來選擇ID為row-001的tr的所有的子級。

 
 
 
  1. varfirstRowCells=theRow.childElements();

這將返回theRow變量(你最初設置的ID為row-001的tr)所有子元素的數(shù)組。

◆接下來,我們假設你只想得到該行的第一個子元素。在本例中,即包含“JoeLennon”文本的td元素。要做到這一點,使用下面的語句:

varfirstRowFirstCell=theRow.down();
真簡單!這個特定的使用方法等價于:

 
 
 
  1. varfirstRowFirstCell=theRow.childElements()[0];

也可以這樣表示:

 
 
 
  1. varfirstRowFirstCell=theRow.down(0);

JavaScript的索引從零開始,所以上面的語句主要告知JavaScript來選擇第一個子元素。要選擇第二個子元素,你可以這樣用:

 
 
 
  1. varfirstRowSecondCell=theRow.down(1);

或者,你可以在兄弟節(jié)點之間瀏覽DOM。本例中,第二個單元格是第一個單元格的下一個兄弟節(jié)點。因此,你可以使用下面的語句:

 
 
 
  1. varfirstRowSecondCell=firstRowFirstCell.next();

與down()函數(shù)工作一樣,選擇第三個單元格可以這樣使用。

 
 
 
  1. varfirstRowThirdCell=firstRowFirstCell.next(1);

◆除了使用索引來查找特定節(jié)點外,Prototype庫還可以使用CSS選擇器語法。在清單1中,我們要找到第二個包含JillMacSweeney’詳細信息的鏈接(“刪除”鏈接)。

 
 
 
  1. varsecondRowSecondLink=$('row-002').down('a',1);

在本例中,使用$函數(shù)來查找ID為row-002的那一行,向下遍歷到第二個后代a元素(錨點)。

一些框架還允許“菊花鏈式”的遍歷功能,這意味著你可以彼此連接遍歷命令。上面的例子中,Prototype庫的另一種表達方式是這樣的:

 
 
 
  1. varsecondRowSecondLink=$('row-002').down('a').next();

看看下面的例子:

 
 
 
  1. vardomTraversal=$('row-001').down().up().next().previous();

正如你所見,菊花鏈允許你連接多個DOM遍歷語句。事實上,上述例子實際上最終選擇ID為row-001的tr元素,所以菊花鏈又回到了開始的地方。


文章名稱:深入學習JavaScriptDOM遍歷方法
標題網(wǎng)址:http://www.5511xx.com/article/coedhje.html