属性节点,文本节点,文档片段节点

属性节点,文本节点,文档片段节点,第1张

属性节点

属性本身就是一个对象(Attr对象),但是实际上我们都是 *** 作的Element对象来进行 *** 作属性。(可读可写)

Elementid

Elementsrc=""

如果某个属性是标准属性,我们可以直接用这个属性

Elementattibutes返回一个伪数组,包含了当前元素所有的属性名。

ElementgetAttribute()

获取某个属性zhi。没有则返回null 标准和不标准的属性名都行

ElementsetAttribute()

用于添加或者修改属性。传两个值。要更改的属性值总是字符串,如果不是字符串,则会转化为字符串。

有就更改,没有就添加

ElementremoveAttribute()

用来移除指定的属性。

ElementgetAttributeNames()

获取所有属性名。返回一个数组。没有则返回空数组。

与Elementattributes区别,Elementattributes返回伪数组。

ElementhasAttribute()

用来检测某个属性是否存在。返回一个布尔值。

ElementhasAttributes()

用来检测当前元素是否有属性。返回一个布尔值。

文本节点

文本节点(Text)代表元素节点(Element)和属性节点(Attribute)的文本内容。

data(数据的意思)

data属性与textValue一样,用来设置或读取文本节点内容。

wholeText

wholeText属性将当前文本节点与相邻的文本节点,作为一个整体返回。

大多数情况下,wholeText属性的返回值,与data属性和textContent属性相同。

length 返回当前文本节点的长度。(跟字符串规矩一样)

文本节点的方法

appendData():在Text节点尾部追加字符串

向当前文本节点后面添加一个文本节点(字符串)

deleteData():删除Text节点内部的子字符串,

第一个参数为子字符串开始位置,第二个参数为子字符串长度

insertData():在Text节点插入字符串,

第一个参数为插入位置,第二个参数为插入的子字符串。

在下标前面插入

replaceData():用于替换文本,第一个参数为替换开始位置,

第二个参数为需要被替换掉的长度,第三个参数为新加入的字符串。

substringData():用于获取子字符串,

第一个参数为子字符串在Text节点中的开始位置,第二个参数为子字符串长度

第一个值为起始下标,第二个值为截取的长度

splitText() 用于将文本节点一分为二。它的参数就是分割位置(从零开始)

,分割到该位置的字符前结束。如果分割位置不存在,将报错。

normalize() 用于父节点将相邻的两个文本节点合并

remove() 用于移除文本节点

文档片段节点

DocumentFragment节点代表一个文档的片段,本身就是一个完整的 DOM 树形结构。

它没有父节点,parentNode返回null,但是可以插入任意数量的子节点。它不属于当前文档。

documentcreateDocumentFragment //创建文本节点

##1访问/获取节点

documentgetElementById(id); //返回对拥有指定id的第一个对象进行访问

documentgetElementsByName(name);//返回带有指定名称的节点集合 注意拼写:Elements

documentgetElementsByTagName(tagname);//返回带有指定标签名的对象集合   注意拼写:Elements

documentgetElementsByClassName(classname);  //返回带有指定class名称的对象集合 注意拼写:Elements

##2创建节点/属性

documentcreateElement(eName);//创建一个节点

documentcreateAttribute(attrName); //对某个节点创建属性

documentcreateTextNode(text); //创建文本节点

##3添加节点

documentinsertBefore(newNode,referenceNode);  //在某个节点前插入节点

parentNodeappendChild(newNode);//给某个节点添加子节点

##4复制节点

cloneNode(true | false);//复制某个节点  参数:是否复制原节点的所有属性

##5删除节点

parentNoderemoveChild(node);//删除某个节点的子节点 node是要删除的节点

注意:为了保证兼容性,要判断元素节点的节点类型(nodeType),若nodeType==1,再执行删除 *** 作。通过这个方法,就可以在 IE和 Mozilla 完成正确的 *** 作。

nodeType属性可返回节点的类型最重要的节点类型是:

元素类型节点类型

元素element        1

属性attr        2

文本text        3

注释comments        8

文档document        9

##6修改文本节点

方法作用

appendData(data);将data加到文本节点后面

deleteData(start,length);将从start处删除length个字符

insertData(start,data);在start处插入字符,start的开始值是0;

replaceData(start,length,data);在start处用data替换length个字符

splitData(offset);在offset处分割文本节点

substringData(start,length);从start处提取length个字符

##7属性 *** 作

getAttribute(name)//通过属性名称获取某个节点属性的值

setAttribute(name,value);  //修改某个节点属性的值

removeAttribute(name);  //删除某个属性

##8查找节点

parentObjfirstChild;//如果节点为已知节点的第一个子节点就可以使用这个方法。此方法可以递归进行使用 parentObjfirstChildfirstChild

parentObjlastChild;//获得一个节点的最后一个节点,与firstChild一样也可以进行递归使用 parentObjlastChildlastChild

parentObjchildNodes;   //获得节点的所有子节点,然后通过循环和索引找到目标节点

##9获取相邻的节点

curtNodepreviousSibling;  //获取已知节点的相邻的上一个节点

curtNodenextSlbling;  // 获取已知节点的下一个节点

##10获取父节点

childNodeparentNode;//得到已知节点的父节点

##11替换节点

replace(newNode,oldNode);

导入dom4J包

File f;

SAXReader sax;

Document doc=saxread(f);

Element e=(Element)docselectSingleNode("td") 如果td需要一些条件的话比如<td id="1">可以写成

docselectSingleNode("td[@id='1']")

String v=egetTextTrim()

v就是td节点里面的文本,你可以截取你要的

以上就是关于属性节点,文本节点,文档片段节点全部的内容,包括:属性节点,文本节点,文档片段节点、常用的dom的 *** 作方法、java 如何获得当前节点的内容等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9544268.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存