通過此文章介紹Text中一些常用方法,文本節點由Text類型表示,包含的是可以照字面解釋的純文本內容。純文本中可以包含轉義后的HTML字符,但不能包含HTML代碼。Text節點具有以下特征:
◎nodeType的值為3;
◎nodeName的值為"#text";
◎nodeValue的值為節點所包含的文本;
◎parentNode是一個Element;
◎不支持(沒有)子節點。
可以通過nodeValue屬性或data屬性訪問Text節點中包含的文本,這兩個屬性中包含的值相同。對nodeValue的修改也會通過data反映出來,反之亦然。使用下列方法可以操作節點中的文本:
◎appendData( text):將text添加到節點的末尾;
◎deleteData( offset,count):從offset指定的位置開始刪除count個字符;
◎insertData( offset,text):在offset指定的位置插入text;
◎replaceData( offset,count,text):用text替換從offset指定的位置開始到offset count為止處的文本;
◎splitText( offset):從offset指定的位置將當前文本節點分成兩個文本節點;
◎substringData(offset,count):提取從offset指定的位置開始到offset+count為止處 的字符串。
除了這些方法之外,文本節點還有一個length屬性,保存著節點中字符的數目。而且,nodeValue.lenqth和data.length中也保存著同樣的值。
在默認情況下,每個可以包含內容的元素最多只能有一個文本節點,而且必須確實有內容存在。
來看幾個例子:
百恒網絡!
上面代碼給出的第一個
元素沒有內容,因此也就不存在文本節點。開始與結束標簽之間只要存在內容,就會創建一個文本節點。因此,第二個
元素中雖然只包含一個空格,但仍然有一
個文本子節點;文本節點的nodeValue值是一個空格。第三個
也有一個文本節點,其nodeValue 的值為"百恒網絡"。可以使用以下代碼來訪問這些文本子節點:
var textNode=div. firstChild; //或者div. childNodes[0]
在取得了文本節點的引用后,就可以像下面這樣來修改它了:
div. firstChild. nodeValue= "http://www.527701.com"
如果這個文本節點當前存在于文檔樹中,那么修改文本節點的結果就會立即得到反映。另外,南昌網站制作公司百恒網絡開發工程師提示大家在修改文本節點時還要注意,此時的字符串會經過HTML(或XML,取決于文檔類型)編碼。換句話
說,小于號、大于號或引號都會像下面的例子一樣被轉義:
//輸出結果是"http://www. jxbh< /strong>.cn"
div. firstChild. nodeValue="http://www. jxbh.cn";
應該說,這是在向DOM文檔中插入文本之前,先對其進行HTML編碼的一種有效方式。
在所有瀏覽器中都可以通過腳本訪問Text類型的構造函數和原型,包括IE8及更高版本。
本文僅限內部技術人員學習交流,不得作于其他商業用途.希望此文對廣技人員有所幫助。原創文章出自:南昌網站建設公司-百恒網絡 http: //www.527701.com 如轉載請注明出處!