黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

JavaScript節(jié)點(diǎn)操作DOMDocument屬性和方法

系統(tǒng) 2826 0

注意大小寫一定不能弄錯(cuò).
屬性:

1 Attributes???? 存儲節(jié)點(diǎn)的屬性列表(只讀)
2 childNodes???? 存儲節(jié)點(diǎn)的子節(jié)點(diǎn)列表(只讀)
3 dataType???? 返回此節(jié)點(diǎn)的數(shù)據(jù)類型
4 Definition???? 以DTD或XML模式給出的節(jié)點(diǎn)的定義(只讀)
5 Doctype???? 指定文檔類型節(jié)點(diǎn)(只讀)
6 documentElement???? 返回文檔的根元素(可讀寫)
7 firstChild???? 返回當(dāng)前節(jié)點(diǎn)的第一個(gè)子節(jié)點(diǎn)(只讀)
8 Implementation???? 返回XMLDOMImplementation對象
9 lastChild???? 返回當(dāng)前節(jié)點(diǎn)最后一個(gè)子節(jié)點(diǎn)(只讀)
10 nextSibling???? 返回當(dāng)前節(jié)點(diǎn)的下一個(gè)兄弟節(jié)點(diǎn)(只讀)
11 nodeName???? 返回節(jié)點(diǎn)的名字(只讀)
12 nodeType???? 返回節(jié)點(diǎn)的類型(只讀)
13 nodeTypedValue???? 存儲節(jié)點(diǎn)值(可讀寫)
14 nodeValue???? 返回節(jié)點(diǎn)的文本(可讀寫)
15 ownerDocument???? 返回包含此節(jié)點(diǎn)的根文檔(只讀)
16 parentNode???? 返回父節(jié)點(diǎn)(只讀)
17 Parsed???? 返回此節(jié)點(diǎn)及其子節(jié)點(diǎn)是否已經(jīng)被解析(只讀)
18 Prefix???? 返回名稱空間前綴(只讀)
19 preserveWhiteSpace???? 指定是否保留空白(可讀寫)
20 previousSibling???? 返回此節(jié)點(diǎn)的前一個(gè)兄弟節(jié)點(diǎn)(只讀)
21 Text???? 返回此節(jié)點(diǎn)及其后代的文本內(nèi)容(可讀寫)
22 url???? 返回最近載入的XML文檔的URL(只讀)
23 Xml???? 返回節(jié)點(diǎn)及其后代的XML表示(只讀)

方法:

1 appendChild???? 為當(dāng)前節(jié)點(diǎn)添加一個(gè)新的子節(jié)點(diǎn),放在最后的子節(jié)點(diǎn)后
2 cloneNode???? 返回當(dāng)前節(jié)點(diǎn)的拷貝
3 createAttribute???? 創(chuàng)建新的屬性
4 createCDATASection???? 創(chuàng)建包括給定數(shù)據(jù)的CDATA段
5 createComment???? 創(chuàng)建一個(gè)注釋節(jié)點(diǎn)
6 createDocumentFragment???? 創(chuàng)建DocumentFragment對象
7 createElement???? 創(chuàng)建一個(gè)元素節(jié)點(diǎn)
8 createEntityReference???? 創(chuàng)建EntityReference對象
9 createNode???? 創(chuàng)建給定類型,名字和命名空間的節(jié)點(diǎn)
10 createPorcessingInstruction???? 創(chuàng)建操作指令節(jié)點(diǎn)
11 createTextNode???? 創(chuàng)建包括給定數(shù)據(jù)的文本節(jié)點(diǎn)
12 getElementsByTagName???? 返回指定名字的元素集合
13 hasChildNodes???? 返回當(dāng)前節(jié)點(diǎn)是否有子節(jié)點(diǎn)
14 insertBefore???? 在指定節(jié)點(diǎn)前插入子節(jié)點(diǎn)
15 Load???? 導(dǎo)入指定位置的XML文檔
16 loadXML???? 導(dǎo)入指定字符串的XML文檔
17 removeChild???? 從子結(jié)點(diǎn)列表中刪除指定的子節(jié)點(diǎn)
18 replaceChild???? 從子節(jié)點(diǎn)列表中替換指定的子節(jié)點(diǎn)
19 Save???? 把XML文件存到指定節(jié)點(diǎn)
20 selectNodes???? 對節(jié)點(diǎn)進(jìn)行指定的匹配,并返回匹配節(jié)點(diǎn)列表
21 selectSingleNode???? 對節(jié)點(diǎn)進(jìn)行指定的匹配,并返回第一個(gè)匹配節(jié)點(diǎn)
22 transformNode???? 使用指定的樣式表對節(jié)點(diǎn)及其后代進(jìn)行轉(zhuǎn)換
23 transformNodeToObject???? 使用指定的樣式表將節(jié)點(diǎn)及其后代轉(zhuǎn)換為對象


*********************************


DOM(文檔對象模型)
DOM(文檔對象模型)概念的推出,這個(gè)API使HTML如虎添翼,但是有些學(xué)DHTML的朋友還是有些困撓,只是因?yàn)槟壳暗氖謨缘臅鴮懖惶茖W(xué),是按字母

來分的,不便查閱.其實(shí)DOM中最關(guān)鍵是要掌握節(jié)點(diǎn)與節(jié)點(diǎn)之間的關(guān)系(between node andnode),想學(xué)習(xí)DHTML中的DOM千萬不要從頭到尾地看遍所

有的屬性和方法,你有三國時(shí)張松的"過目不忘"的本領(lǐng)嗎?沒有吧,那就聽我分析一下:

其實(shí)DOM教給我們的就是一個(gè)層次結(jié)構(gòu),你可以理解為一個(gè)樹形結(jié)構(gòu),就像我們的目錄一樣,一個(gè)根目錄,根目錄下有子目錄,子目錄下還有子

目錄……

根節(jié)點(diǎn):


DOM把層次中的每一個(gè)對象都稱之為節(jié)點(diǎn)(NODE),以HTML超文本標(biāo)記語言為例:整個(gè)文檔的一個(gè)根就是<html>,在DOM中可以使用

document.documentElement來訪問它,它就是整個(gè)節(jié)點(diǎn)樹的根節(jié)點(diǎn)(ROOT)

子節(jié)點(diǎn):

一般意義上的節(jié)點(diǎn),根節(jié)點(diǎn)以下最大子節(jié)點(diǎn)就是主文檔區(qū)<body>了,要訪問到body標(biāo)簽,在腳本中應(yīng)該寫:
document.body
body區(qū)以內(nèi)所有的文本及HTML標(biāo)簽都是文檔的節(jié)點(diǎn),分別稱為文本節(jié)點(diǎn)、元素節(jié)點(diǎn)(或者叫標(biāo)簽節(jié)點(diǎn)),大家知道HTML說到底只是文本而矣,

不論怎么樣的網(wǎng)頁必然由這兩個(gè)節(jié)點(diǎn)組成,也只能由這兩個(gè)節(jié)點(diǎn)組成

節(jié)點(diǎn)之間的關(guān)系:

節(jié)點(diǎn)之間的關(guān)系也是DOM中最重要的一個(gè)關(guān)節(jié),如何正確地引用到節(jié)點(diǎn)對象,一定要清楚節(jié)點(diǎn)樹各個(gè)節(jié)點(diǎn)的相互描述方式,在DHTML里,

Javascript腳本就用了各個(gè)節(jié)點(diǎn)對象的一整套方法和屬性去描述另外的節(jié)點(diǎn)對象。


節(jié)點(diǎn)的絕對引用:
返回文檔的根節(jié)點(diǎn)
document.documentElement
返回當(dāng)前文檔中被擊活的標(biāo)簽節(jié)點(diǎn)
document.activeElement
返回鼠標(biāo)移出的源節(jié)點(diǎn)
event.fromElement
返回鼠標(biāo)移入的源節(jié)點(diǎn)
event.toElement
返回激活事件的源節(jié)點(diǎn)
event.srcElement

節(jié)點(diǎn)的相對引用:(設(shè)當(dāng)前對節(jié)點(diǎn)為node)
返回父節(jié)點(diǎn)
node.parentNode
node.parentElement
返回子節(jié)點(diǎn)集合(包含文本節(jié)點(diǎn)及標(biāo)簽節(jié)點(diǎn))
node.childNodes
返回子標(biāo)簽節(jié)點(diǎn)集合
node.children
返回子文本節(jié)點(diǎn)集合
node.textNodes
返回第一個(gè)子節(jié)點(diǎn)
node.firstChild
返回最后一個(gè)子節(jié)點(diǎn)
node.lastChild
返回同屬下一個(gè)節(jié)點(diǎn)
node.nextSibling
返回同屬上一個(gè)節(jié)點(diǎn)
node.previousSibling

節(jié)點(diǎn)的各種操作:(設(shè)當(dāng)前的節(jié)點(diǎn)為node)

新增標(biāo)簽節(jié)點(diǎn)句柄:
document.createElement(sNode) //參數(shù)為要新添的節(jié)點(diǎn)標(biāo)簽名,例:newnode=document.createElement("div");

1、添加節(jié)點(diǎn):
追加子節(jié)點(diǎn):
node.appendChild(oNode) //oNode為生新增的節(jié)點(diǎn)句柄,例:node.appendChild(newnode)
應(yīng)用標(biāo)簽節(jié)點(diǎn)
node.applyElment(oNode,sWhere)//oNode為生新增的節(jié)點(diǎn)句柄,sWhere有兩個(gè)值:outside / inside,加在當(dāng)前節(jié)點(diǎn)外面還是里面
插入節(jié)點(diǎn)
inode.insertBefore()
node.insertAdjacentElement()
node.replaceAdjacentText()

2、修改節(jié)點(diǎn):

刪除節(jié)點(diǎn)
node.remove()
node.removeChild()
node.removeNode()

替換節(jié)點(diǎn)
node.replaceChild()
node.replaceNode()
node.swapNode()


2、復(fù)制節(jié)點(diǎn):
返回復(fù)制復(fù)制節(jié)點(diǎn)引用
node.cloneNode(bAll)//bAll為布爾值,true / false 是否克隆該節(jié)點(diǎn)所有子節(jié)點(diǎn)

3、節(jié)點(diǎn)信息
是否包含某節(jié)點(diǎn)
node.contains()
是否有子節(jié)點(diǎn)
node.hasChildNodes()

*******************************************************

下面為javascript操作xml
<script language="JavaScript">
<!--
var doc = new ActiveXObject("Msxml2.DOMDocument"); //ie5.5+,CreateObject(" Microsoft .XMLDOM")


//加載文檔
//doc.load("b.xml");

//創(chuàng)建文件頭
var p = doc.createProcessingInstruction("xml","version='1.0'?? encoding='gb2312'");

???? //添加文件頭
???? doc.appendChild(p);

//用于直接加載時(shí)獲得根接點(diǎn)
//var root = doc.documentElement;

//兩種方式創(chuàng)建根接點(diǎn)
//???? var root = doc.createElement("students");
???? var root = doc.createNode(1,"students","");

???? //創(chuàng)建子接點(diǎn)
???? var n = doc.createNode(1,"ttyp","");

???????? //指定子接點(diǎn)文本
???????? //n.text = " this is a test";
????
???? //創(chuàng)建孫接點(diǎn)
???? var o = doc.createElement("sex");
???????? o.text = "男";???? //指定其文本

???? //創(chuàng)建屬性
???? var r = doc.createAttribute("id");
???????? r.value="test";

???????? //添加屬性
???????? n.setAttributeNode(r);

???? //創(chuàng)建第二個(gè)屬性????
???? var r1 = doc.createAttribute("class");
???????? r1.value="tt";
????????
???????? //添加屬性
???????? n.setAttributeNode(r1);

???????? //刪除第二個(gè)屬性
???????? n.removeAttribute("class");

???????? //添加孫接點(diǎn)
???????? n.appendChild(o);

???????? //添加文本接點(diǎn)
???????? n.appendChild(doc.createTextNode("this is a text node."));

???????? //添加注釋
???????? n.appendChild(doc.createComment("this is a comment\n"));
????
???????? //添加子接點(diǎn)
???????? root.appendChild(n);
????
???? //復(fù)制接點(diǎn)
???? var m = n.cloneNode(true);

???????? root.appendChild(m);
????????
???????? //刪除接點(diǎn)
???????? root.removeChild(root.childNodes(0));

???? //創(chuàng)建數(shù)據(jù)段
???? var c = doc.createCDATASection("this is a cdata");
???????? c.text = "hi,cdata";
???????? //添加數(shù)據(jù)段
???????? root.appendChild(c);
????
???? //添加根接點(diǎn)
???? doc.appendChild(root);

???? //查找接點(diǎn)
???? var a = doc.getElementsByTagName("ttyp");
???? //var a = doc.selectNodes("http://ttyp");

???? //顯示改接點(diǎn)的屬性
???? for(var i= 0;i<a.length;i++)
?????? {
?????????? alert(a[i].xml);
?????????? for(var j=0;j<a[i].attributes.length;j++)
?????????? {
?????????????? alert(a[i].attributes[j].name);
?????????? }
?????? }

???? //修改節(jié)點(diǎn),利用XPATH定位節(jié)點(diǎn)
???? var b = doc.selectSingleNode("http://ttyp/sex");
???? b.text = "女";

???? //alert(doc.xml);

???? //XML保存(需要在服務(wù)端,客戶端用FSO)
???? //doc.save();
????
???? //查看根接點(diǎn)XML
???? if(n)
?????? {
?????????? alert(n.ownerDocument.xml);
?????? }

//-->
</script>

JavaScript節(jié)點(diǎn)操作DOMDocument屬性和方法


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論