JavaScript操作XML/HTML比较常用的对象属性集锦

 更新时间:2015年10月30日 14:53:19   作者:强强强子  
本文给大家介绍javascript操作xml/html比较常用的对象属性,涉及到js对象属性相关知识,对JavaScript操作XML/HTML比较常用的对象属性感兴趣的朋友可以参考下本文

节点对象属性

childNodes—返回节点到子节点的节点列表

firstChild—返回节点的首个子节点。
lastChild—返回节点的最后一个子节点。

nextSibling—返回节点之后紧跟的同级节点。

nodeName—返回节点的名字,根据其类型。
nodeType—返回节点的类型。
nodeValue—设置或返回节点的值,根据其类型。

ownerDocument—返回节点的根元素(document对象)。

parentNode—返回节点的父节点。

previousSibling—返回节点之前紧跟的同级节点。

text—返回节点及其后代的文本(IE独有)。

xml—返回节点及其后代的XML(IE独有)。

节点对象的方法

appendChild()—向节点的子节点列表的结尾添加新的子节点。

cloneNode()—复制节点。

hasChildNodes()—判断当前节点是否拥有子节点。

insertBefore()—在指定的子节点前插入新的子节点。

normalize()—合并相邻的Text节点并删除空的Text节点。

removeChild()—删除(并返回)当前节点的指定子节点。

replaceChild()—用新节点替换一个子节点。

IE6独有

selectNodes()—用一个XPath表达式查询选择节点。

selectSingleNode()—查找和XPath查询匹配的一个节点。

transformNode()—使用XSLT把一个节点转换为一个字符串。

transformNodeToObject()—使用XSLT把一个节点转换成为一个文档。

NodeList对象

length –返回节点列表中的节点数目。

item()—返回节点列表中处于指定的索引号的节点。

例如:

Javascript代码

xmlDoc = loadXMLDoc(“books.xml”); 
var x = xmlDoc.getElementsByTagName(“title”); 
document.write(“title element:” + x.length); 

输出:title element:4

Javascript代码

var y = xmlDoc.documentElement.childNodes; 
document.write(y.item(0).nodeName); 

输出:book

NamedNodeMap对象

length—返回列表中节点数目。

getNamedItem()—返回指定的节点。(通过名称)

item()—返回处于指定索引号的节点。

removeNamedItem()—删除指定的节点(根据名称)。

例如:

Javascript代码

xmlDoc = loadXMLDoc(“books.xml”); 
var x = xmlDoc.getElementsByTagName(“book”); 
document.write(x.item(0).attributes.length); 

输出:1

Javascript代码

document.write(x.item(0).attributes.getNamedItem(“category”); 

输出:COOKING 

Javascript代码 

x.item(0).attributes.removeNamedItem(“category”); 

删除第一个book元素的category属性

Document对象代表整个XML文档。

Document对象的属性。

async—规定XML文件的下载是否应当被同步处理。

childNodes—返回属于文档的子节点的节点列表。

doctype—返回与文档相关的文档类型声明。

documentElement—返回文档的子节点。

firstChild—返回文档的首个子节点。

implementation—返回处理该文档的DOMImplementation对象。(IE没有)

lastChild—返回文档的最后一个子节点。

nodeType—返回节点类型。

nodeName—依据节点的类型返回其名称。

nodeValue—依据节点的类型返回其值。

text—返回节点及其后代的文本(IE独有)。

xml—返回节点及其后代的XML(IE独有)。

Document对象的方法

createAttribute(att_name)—创建拥有指定名称的属性节点,并返回新的属性对象。
createCDATASection(data)—创建CDATA区段节点。
createComment(data)—创建注释节点。
createDocumentFragment—创建空的DocumentFragment对象,并返回此对象。
createElement(node_name)—创建元素节点。
createEntityReference(name)—创建EntityReference对象,并返回此对象。(IE独有)
createTextNode(data)—创建文本节点。
getElementById(elementid)—查找具有指定的唯一ID的元素。
getElementsByTagName(node_name)—返回所有具有指定名称的元素节点。

例如:

Javascript代码 

var xmlDoc = loadXMLDoc("book.xml");  
xmlDoc.async = false; 
var book = xmlDoc.getElementsByTagName("book"); 
var newtext1="Special Offer & Book Sale"; 
var newCDATA=xmlDoc.createCDATASection(newtext1); 
book[0].appendChild(newCDATA); 
var newtext2="Revised September 2006"; 
var newComment=xmlDoc.createComment(newtext2); 
book[0].appendChild(newComment); 
var var newel=xmlDoc.createElement('edition'); 
var newtext3=xmlDoc.createTextNode('First'); 
newel.appendChild(newtext3); 
book[0].appendChild(newel); 
document.write("<xmp>" + xmlDoc.xml + "</xmp>"); 

Element 对象的属性
attributes—返回元素的属性的NamedNodeMap
childNodes—返回元素的子节点的NodeList
firstChild—返回元素的首个子节点。
lastChild—返回元素的最后一个子节点。
nextSibling—返回元素之后紧跟的节点。
nodeName—返回节点的名称。
nodeType—返回元素的类型。
ownerDocument—返回元素所属的根元素(document对象)。
parentNode—返回元素的父节点。
previousSibling—返回元素之前紧跟的节点。
tagName—返回元素的名称。
text—返回节点及其后代的文本。(IE-only)
xml—返回节点及其后代得XML。(IE-only)

Element对象的方法

appendChild(node)—向节点的子节点列表末尾添加新的子节点。
cloneNode(true)—克隆节点。
getAttribute(att_name)—返回属性的值。
getAttributeNode(att_name)—以 Attribute 对象返回属性节点。
getElementsByTagName(node_name)—找到具有指定标签名的子孙元素。
hasAttribute(att_name)—返回元素是否拥有指定的属性。
hasAttributes()—返回元素是否拥有属性。
hasChildNodes()—返回元素是否拥有子节点。
insertBefore(new_node,existing_node)—在已有的子节点之前插入一新的子节点。
removeAttribute(att_name)—删除指定的属性。
removeAttributeNode(att_node)—删除指定的属性节点。
removeChild(node)—删除子节点。
replaceChild(new_node,old_node)—替换子节点。
setAttribute(name,value)—添加新的属性或者改变属性的值。
setAttribute(att_node)—添加新的属性。

Javascript代码

x=xmlDoc.getElementsByTagName('book'); 
for(i=0;i<x.length;i++) 
{ 
attnode=x.item(i).getAttributeNode("category"); 
document.write(attnode.name); 
document.write(" = "); 
document.write(attnode.value); 
document.write("<br />"); 
} 
for(i=0;i<x.length;i++){ 
document.write(x[i].getAttribute('category')); 
document.write("<br />"); 
} 
xmlDoc=loadXMLDoc("/example/xdom/books.xml"); 
x=xmlDoc.getElementsByTagName('book'); 
document.write(x[0].getAttribute('category')); 
document.write("<br />"); 
x[0].removeAttribute('category'); 
document.write(x[0].getAttribute('category')); 
var attnode = x[1].getAttributeNode("category"); 
var y = x[1].removeAttributeNode(attnode); 
document.write("<xmp>" + xmlDoc.xml + "</xmp>"); 
function get_lastchild(n) 
{ 
 x = n.lastChild; 
 while(x.noteType!=1){ 
  x = x.previousSibling; 
 } 
 return x; 
} 
function get_firstChild(n){ 
 x = n.firstChild; 
 whild(x.nodeType!=1){ 
 x=x.nextSibling; 
 } 
 return x; 
} 
xmlDoc=loadXMLDoc("books.xml"); 
x=xmlDoc.getElementsByTagName("book")[0]; 
deleted_node=x.removeChild(get_lastchild(x)); 
document.write("Node removed: " + deleted_node.nodeName); 

Attr对象

Attr 对象表示 Element 对象的属性。

name—返回属性的名称。

nodeName—返回节点的名称,依据其类型

nodeType—返回节点的类型。

nodeValue—设置或返回节点的值,依据其类型

ownerDocument—返回属性所属的根元素(document对象)。

specified—如果属性值被设置在文档中,则返回 true,如果其默认值被设置在 DTD/Schema 中,则返回 false。

value—设置或返回属性的值。

text—返回属性的文本。IE-only。

xml—返回属性的 XML。IE-only。

Text对象的属性

data—设置或返回元素或属性的文本。

length—返回元素或属性的文本长度。

Text对象的方法

appendData(string)—向节点追加数据。

deleteData(start,length)—从节点删除数据。

insertData(start,string)— 向节点中插入数据。

replaceData(start,length,string)—替换节点中的数据。

replaceData(offset)— 把一个 Text 节点分割成两个。

substringData(start,length)— 从节点提取数据。

关于JavaScript操作XML/HTML比较常用的对象属性集锦的全部叙述就到此结束了,更多内容请登陆脚本之家官网了解更多,谢谢。

相关文章

  • JavaScript实现可动的canvas环形进度条

    JavaScript实现可动的canvas环形进度条

    这篇文章主要介绍了如何利用JavaScript canvas绘制一个可以动的环形进度条。文中的示例代码讲解详细,感兴趣的小伙伴可以动手试一试
    2022-02-02
  • js中的getElementById的使用方法

    js中的getElementById的使用方法

    getElementById是JavaScript中的一个DOM方法,用于根据元素的id属性获取HTML文档中的元素,本文给大家介绍js中的getElementById的使用方法,感兴趣的朋友一起看看吧
    2023-10-10
  • 设置BFC功能及使用示例详解

    设置BFC功能及使用示例详解

    这篇文章主要为大家介绍了设置BFC功能及使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • js实现mp3录音通过websocket实时传送+简易波形图效果

    js实现mp3录音通过websocket实时传送+简易波形图效果

    这篇文章主要介绍了js实现mp3录音通过websocket实时传送+简易波形图效果,本文通过实例代码给大家介绍的非常详细对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • 分享一个原生的JavaScript拖动方法

    分享一个原生的JavaScript拖动方法

    本文给大家分享的是基于JavaScript的setCapture方法实现的拖动效果,非常的简单实用,有需要的小伙伴可以参考下
    2016-09-09
  • JavaScript 数据结构之集合创建(1)

    JavaScript 数据结构之集合创建(1)

    这篇文章主要介绍了JavaScript 数据结构之集合创建,集合是由一组无序且唯一的元素组成。数据结构中的集合,对应的是数学概念当中的有限集合;下文详细介绍需要的小伙伴可以参考一下
    2022-04-04
  • JS返回iframe中frameBorder属性值的方法

    JS返回iframe中frameBorder属性值的方法

    这篇文章主要介绍了JS返回iframe中frameBorder属性值的方法,分析了frameBorder属性的功能及javascript获取frameBorder属性值的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-04-04
  • 全面详解JS正则中匹配技巧及示例

    全面详解JS正则中匹配技巧及示例

    这篇文章主要为大家介绍了全面详解JS正则中匹配技巧及示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-01-01
  • 详解如何在JavaScript中创建线性仪表图

    详解如何在JavaScript中创建线性仪表图

    线性仪表图表示显示所需值的垂直或水平线性刻度,带有颜色刻度以及单个或多个指针。本文将详细讲解如何利用JavaScript创建线性仪表图,需要的可以参考一下
    2022-03-03
  • JavaScript合并两个数组并去除重复项的方法

    JavaScript合并两个数组并去除重复项的方法

    这篇文章主要介绍了JavaScript合并两个数组并去除重复项的方法,涉及javascript操作数组的合并与去重的相关技巧,需要的朋友可以参考下
    2015-06-06

最新评论