`

JS文档对象模型(DOM)的基本方法

阅读更多
一.直接引用结点
1.document.getElementById(id);
--在文档里面通过id来找结点
2.document.getElementByTagName(tagName);
--返回一个数组,包含对这些结点的引用
--如:document.getElementByTagName("span");将返回所有类型为span的结点

二.间接引用结点
3.element.childNodes
--返回element的所有子结点,可以用element.childNodes[i]的方式来调用
--element.firstChild=element.childNodes[0];
--element.lastChild=element.childNodes[element.childNonts.length-1];
4.element.parentNode
--引用父结点
5.element.nextSibling; //引用下一个兄弟结点
element.previousSibling; //引用上一个兄弟结点

三.获得结点信息
6.nodeName属性获得结点名称
--对于元素结点返回的是标记名称,如:<a herf><a>返回的是"a"
--对于属性结点返回的是属性名称,如:class="test" 返回的是test
--对于文本结点返回的是文本的内容
7.nodeType返回结点的类型
--元素结点返回1
--属性结点返回2
--文本结点返回3
8.nodeValue返回结点的值
--元素结点返回null
--属性结点返回undefined
--文本结点返回文本内容
9.hasChildNodes()判断是否有子结点
10.tagName属性返回元素的标记名称
--这个属性只有元素结点才有,等同于元素结点的nodeName属性

四.处理属性结点
11.每个属性结点都是元素结点的一个属性,可以通过(元素结点.属性名称)访问
12.利用setAttribute()方法给元素结点添加属性
--elementNode.setAttribute(attributeName,attributeValue);
--attributeName为属性的名称,attributeValue为属性的值
13.使用getAttribute()方法获得属性值
--elementNode.getAttribute(attributeName);

五.处理文本结点
14.innerHTML和innerText属性,这两个方法相信大家都很熟悉,不介绍了,值得注意的是无论是ie还是firefox都容易把空格、换行、制表符等当成文本结点。所有一般通过element.childNodes[i]引用文本结点的时候,一般要处理:
<script language"javaScript" type="text/javascript">
function cleanWhitespace(element)
{
for(var i=0; i<element.childNotes.length; i )
{
var node = element.childNodes[i];
if(node.nodeType == 3 && !/\S/.test(node.nodeValue))
{
node.parentNode.removeChild(node);
}
}
}
</script>

六.改变文档的层次结构
15.document.createElement()方法创建元素结点
--如:document.createElement("Span");
16.document.createTextNode()方法创建文本结点
--如:document.createTextNode(" "); //注:他不会通过html编码,也就是说这里创建的不是空格,而是字符串
17.使用appendChild()方法添加结点
--parentElement.appendChild(childElement);
18.使用insertBefore()方法插入子节点
--parentNode.insertBefore(newNode,referenceNode);
--newNode为插入的节点,referenceNode为将插入的节点插入到这之前
19.使用replaceChild方法取代子结点
--parentNode.replaceChild(newNode,oldNode);
--注:oldNode必须是parentNode的子结点,
20.使用cloneNode方法复制结点
--node.cloneNode(includeChildren);
--includeChildren为bool,表示是否复制其子结点
21.使用removeChild方法删除子结点
--parentNode.removeChild(childNode);

七.表格的操作
--注:ie中无法直接将一个完整的表格结点插入到文档中
22.添加行和单元格
var _table=document.createElement("table"); //创建表
table.insertRow(i); //在table的第i行插入行
row.insertCell(i); //在row的第i个位置插入单元格
23.引用单元格对象
--table.rows[i].cells[i];
24.删除行和单元格
--table.deleteRow(index);
--row.deleteCell(index);
25.交换两行获得两个单元格的位置
node1.swapNode(node2);
--这个方法在firefox中将出错

通用方法:
function swapNode(node1,node2)
{
var _parent=node1.parentNode;
var _t1=node1.nextSubling;
var _t2=node2.nextSubling;
if(_t1)parent.insertBefore(node2,_t1);
else _parent.appendChild(node2);
if(_t2)parent.insertBefore(node1,_t2);
else _parent.appendChild(node1);
}
分享到:
评论

相关推荐

    Javascript文档对象模型(DOM

    ### JavaScript文档对象模型(DOM)详解 #### 一、引言 文档对象模型(Document Object Model,简称DOM),是W3C为了统一不同浏览器环境下的文档处理方式而制定的一套标准。这一标准的诞生,旨在解决早期浏览器混战...

    JavaScrip文档对象模型(DOM).

    文档对象模型(Document Object Model,简称DOM)是一项由万维网联盟(W3C)制定的标准,旨在提供一种独立于编程语言的接口,使得开发者能够通过脚本语言(如JavaScript)动态地访问和更新文档的内容、结构和样式。...

    AJAX文档对象模型DOM

    文档对象模型(DOM)是Web开发中的核心技术,它允许开发者通过JavaScript等脚本语言来动态地访问和修改HTML或XML文档的结构、内容和样式。DOM是一个标准的接口,它将文档表示为一棵由节点组成的树,每个节点代表文档...

    常用手册 DOM文档对象模型.chm

    通过阅读《常用手册 DOM文档对象模型》,开发者不仅可以深入理解DOM的基本概念,还能掌握实际操作DOM的技巧,从而提高网页和应用程序的交互性和动态性。此外,对于学习前端开发和Web应用的人员来说,这是一份非常...

    八套Xml文档对象模型Dom书籍文档资料.rar

    XML(eXtensible Markup Language)是一种用于标记...而提供的“八套Xml文档对象模型Dom书籍文档资料”应该包含了深入浅出的DOM理论讲解、实践案例分析以及相关的API使用指南,对于深入学习DOM和XML处理非常有价值。

    DOM文档对象模型中文手册

    **DOM文档对象模型** DOM(Document Object Model)是W3C组织制定的一种标准,它提供了一种结构化的表示XML或HTML文档的方式,并定义了访问和操作这些文档的标准方法。DOM将文档视为一棵由节点组成的树,每个节点...

    DOM文档对象模型中文参考手册.rar

    **DOM文档对象模型** DOM(Document Object Model)是万维网联盟(W3C)制定的一种标准,它提供了一种结构化的表示XML或HTML文档的方法,并允许编程语言与这些文档进行交互。DOM将整个文档视为一个由节点组成的树形...

    DOM文档对象模型

    ### DOM文档对象模型详解 #### 一、概述 **DOM文档对象模型**是网页开发中的一个核心概念,它提供了一种结构化的方式来处理HTML或XML文档。通过DOM,开发者能够以编程的方式创建、访问和修改文档的内容、结构及...

    文档对象模型中文手册

    总的来说,"文档对象模型中文手册"是学习和掌握DOM技术的重要参考资料,无论你是前端开发人员还是XML处理者,都应该熟悉DOM的基本概念和操作方法,以便更好地构建交互性强、响应迅速的Web应用。通过深入阅读这本手册...

    文档对象模型DOM通俗讲解

    文档对象模型(DOM)是Web开发中的一个关键概念,它为HTML和XML文档提供了一个结构化的表示,并允许程序和脚本动态地访问和更新文档内容、结构和样式。DOM是独立于语言的标准,这意味着任何支持DOM的编程语言都可以...

    文档对象模型(DOM)

    文档对象模型(DOM)是Web开发中至关重要的一个部分,它提供了一种标准化的方式来解析、访问和修改HTML或XML文档的结构。DOM将文档视为一棵由节点组成的树,每个节点代表文档的一个部分,如元素、文本、注释等。DOM...

    08JavaScript文档对象模型总结(DOM).docx

    JavaScript文档对象模型(DOM)是Web开发中一个关键的概念,它允许开发者通过JavaScript代码来操纵HTML或XML文档的结构、内容和样式。DOM定义了一种标准的、平台和语言无关的方式来表示XML或HTML文档,使得我们可以用...

    DOM文档对象模型参考手册

    DOM文档对象模型是独立于语言的,这意味着在JavaScript、Python、Java等任何支持DOM的编程语言中,都可以使用相同的方法来处理XML或HTML文档。 DOM的主要概念包括节点、节点类型和DOM树。节点是DOM中最基本的单位,...

    精通JavaScript(文档对象模型和事件驱动——window对象)

    为了能够操纵浏览器和文档,JavaScript使用分层的父对象和子对象,这就是“文档对象模型”。这些对象的组织类似一个树型结构,并表示一个Web文档的所有内容和组件。 注意:”文档对象模型”不是JavaScript语言的一...

    VBSCRIPT文档对象模型

    VBScript文档对象模型(DOM)是Web开发中的一个重要概念,特别是在使用VBScript进行客户端脚本编程时。DOM是一个标准,允许编程语言与HTML、XML等结构化文档进行交互,为这些文档提供了一种统一的、独立于平台和语言...

    DOM 文档对象模型

    ### DOM (文档对象模型)详解 #### 一、DOM 的概念与作用 DOM,全称为 Document Object Model(文档对象模型),是一种被广泛应用于处理 XML 和 HTML 文档的标准接口。它由 W3C(World Wide Web Consortium)制定并...

Global site tag (gtag.js) - Google Analytics