一、getElementById()

  寻找一个有着给定 id 属性值的元素,返回值是一个有着给定 id 属性值的元素节点。如果不存在,这样的元素,它返回 null.

二、getElementsByName()

  寻找有着给定name属性的所有元素,这个方法将返回一个节点集合,这个集合可以当作一个数组来处理。这个集合的 length 属性等于当前文档里有着给定name属性的所有元素的总个数。

三、getElementsByTagName()

  寻找有着给定标签名的所有元素,这个方法将返回一个节点集合,这个集合可以当作一个数组来处理这个集合的 length 属性等于当前文档里有着给定标签名的所有元素的总个数。

四、hasChildNodes()

  该方法用来检查一个元素是否有子节点,返回值是 true 或 false

  文本节点和属性节点不可能再包含任何子节点,所以对这两类节点使用 hasChildNodes 方法的返回永远是 false.

  如果 hasChildNodes 方法的返回值是 false,则 childNodes,firstChild,lastChild 将是空数组和空字符串。

五、nodeName和nodeType

  文档里的每个节点都有以下属性。
  nodeName:返回一个字符串,其内容是给定节点的名字 
  var name = node.nodeName;
 

* 如果节点是元素节点,nodeName返回这个元素的名称

* 如果是属性节点,nodeName返回这个属性的名称

* 如果是文本节点,nodeName返回一个内容为#text 的字符串

  注:nodeName 是一个只读属性。

nodeType:返回一个整数,这个数值代表着给定节点的类型。
•nodeType 属性返回的整数值对应着 12 种节点类型,常用的有三种:
•Node.ELEMENT_NODE    ---1    -- 元素节点
•Node.ATTRIBUTE_NODE  ---2    -- 属性节点
•Node.TEXT_NODE       ---3    -- 文本节点
•nodeType 是个只读属性
nodeValue:返回给定节点的当前值(字符串)
•如果给定节点是一个属性节点,返回值是这个属性的值。
• 如果给定节点是一个文本节点,返回值是这个文本节点的内容。
•如果给定节点是一个元素节点,返回值是 null
• nodeValue 是一个 读/写 属性,但不能对元素节点的 nodeValue 属性设置值,
 但可以为文本节点的 nodeValue 属性设置一个值
 var li = document.getElementByIdx_x_x_x(“li”);
 if(li.firstChild.nodeType == 3)
 li.firstChild.nodeValue = “myLi”;
六、replaceChild()
  把一个给定父元素里的一个子节点替换为另外一个子节点
    var reference = element.replaceChild(newChild,oldChild);
  返回值是一个指向已被替换的那个子节点的引用指针。
  如果被插入的子节点还有子节点,则那些子节点也被插入到目标节点中
 
七、查询属性节点和属性节点的值、删除和添加属性
  getAttribute()  
  返回一个给定元素的一个给定属性节点的值
  var attributeValue = element.getAttribute(attributeName);
  给定属性的名字必须以字符串的形式传递给该方法。
  给定属性的值将以字符串的形式返回,如果给定属性不存在,getAttribute() 将返回一个空字符串.
  getAttributeNode()
  通过属性获取属性节点
  setAttribute()
  将给定元素节点添加一个新的属性值或改变它的现有属性的值
   element.setAttribute(attributeName,attributeValue);
   •属性的名字和值必须以字符串的形式传递给此方法
   •如果这个属性已经存在,它的值将被刷新;
   •如果不存在,setAttribute()方法将先创建它再为其赋值。
removeAttribute()
   •删除指定名字的属性
 
八、创建新元素节点,创建文本节点
createElement_x_x()
•按照给定的标签名创建一个新的元素节点。方法只有一个参数:将被创建的元素的名字,是一个字符串.
var reference = document_createElement_x_x(element);
•方法的返回值:是一个指向新建节点的引用指针。返回值是一个元素节点,所以它的
nodeType 属性值等于 1。
•新元素节点不会自动添加到文档里,新节点没有 nodeParent 属性,它只是一个存在于JavaScript 上下文的对象.
     var pElement = document_createElement_x_x("p");
createTextNode()
   •创建一个包含着给定文本的新文本节点。这个方法的返回值是一个指向新建文本节点引用指针。
   var textNode = document_createTextNode(text);
   •方法只有一个参数:新建文本节点所包含的文本字符串
   •方法的返回值:是一个指向新建节点的引用指针。它是一个文本节点,所以它的 nodeType 属性
   等于 3.
  •新元素节点不会自动添加到文档里,新节点没有 nodeParent 属性
 
九、innerHTML 属性
  浏览器几乎都支持该属性,但不是 DOM 标准的组成部分。
  innerHTML 属性可以用来读,写某给定元素里的 HTML 内容。
 
十、插入节点
la()
  •为给定元素增加一个子节点: 
        var newreference = element.a(newChild).             
    给定子节点 newChild 将成为给定元素节点 element 的最后一个子节点。
   •方法的返回值是一个指向新增子节点的引用指针。
   •该方法通常与 createElement_x_x() createTextNode() 配合使用
   •新节点可以被追加给文档中的任何一个元素
insertBefore()
   •把一个给定节点插入到一个给定元素节点的给定子节点的前面
   var reference =  element.insertBefore(newNode,targetNode);
    节点 newNode 将被插入到元素节点 element 中并出现在节点 targetNode 的前面.
   •节点 targetNode 必须是 element 元素的一个子节点。
   •该方法通常与 createElement_x_x() 和 createTextNode() 配合使用
注意:
DOM 没有提供 insertAfter() 方法但可以自己定义如下:
selectElement.insertBefore(
•newOptionElement,
•optionElement.nextSibling);
 
childNodes:返回一个数组,这个数组由给定元素节点的子节点构成:

var nodeList = node.childNodes;

•文本节点和属性节点都不可能再包含任何子节点,所以它们的 childNodes 属性永远会返回一个空数组。
•如果想知道某个元素有没有子节点,可以用 hasChildNodes 方法。
•如果想知道某个元素有多少个子节点,可以用 childNodes 数组的 length 属性。
•childNodes 属性是一个只读属性。
 
  removeChild()
•从一个给定元素里删除一个子节点

var reference = element.removeChild(node);

•返回值是一个指向已被删除的子节点的引用指针。
•某个节点被removeChild()方法删除时,这个节点所包含的所有子节点将同时被删除。
•如果想删除某个节点,但不知道它的父节点是哪一个,parentNode 属性可以帮忙。
firstChild:该属性返回一个给定元素节点的第一个子节点,返回这个节点对象的指针。

var reference = node.firstChild;

•文本节点和属性节点都不可能包含任何子节点,所以它们的 firstChild 属性永远会返

回 null。

•某个元素的 firstChild 属性等价于这个元素的 childNodes 节点集合中的第一个节点,即:

var reference = node.ChildNodes[0];

•firstChild 属性是一个只读属性。
  lastChild:对应 firstChild 的一个属性。
  nextSibling: 返回一个给定节点的下一个兄弟节点。
  parentNode:返回一个给定节点的父节点。
•parentNode 属性返回的节点永远是一个元素节点,因为只有元素节点才有可能包含子节点。
•document 节点没有父节点。
  previousSibling:返回一个给定节点的上一个兄弟节点

DOM常用操作总结的更多相关文章

  1. JavaScript DOM 常用操作

    1.理解DOM: DOM(Document Object Model ,文档对象模型)一种独立于语言,用于操作xml,html文档的应用编程接口. 怎么说,我从两个角度理解: 对于JavaScript ...

  2. (一)DOM 常用操作 —— “查找”节点

    在 DOM 树中,如果想要操作一个节点,那么首先要"查找"到这个节点.查找节点的方法由 Document 接口定义,而该接口由 JavaScript 中的 document 对象实 ...

  3. HTML基础之DOM常用操作

    DOM(Document Object Model ),文档对象模型,主要用于对HTML和XML文档的内容进行操作. 一.查找节点 直接获取标签 document.getElementById('i1 ...

  4. DOM常用操作,Sass基础

    一个元素的子元素个数ParentNode.childElementCount 只读属性返回一个无符号长整型数字,表示给定元素的子元素数. 取消当前事件e.preventDefault();有时候我们选 ...

  5. dom常用操作

    创建节点:document.createElement(元素名), document.createTextNode(文本内容) 添加节点:parent.appendChild(newChild) 移除 ...

  6. HTML DOM和BOM常用操作总结

     JavaScript Code  1234567891011121314151617181920212223242526272829303132333435363738394041424344454 ...

  7. JS操作DOM常用API总结

    <JS高程>中的DOM部分写的有些繁琐,还没勇气整理,直到看到了这篇博文 Javascript操作DOM常用API总结,顿时有了一种居高临下,一览全局的感觉.不过有时间还是得自己把书里面的 ...

  8. 【repost】Javascript操作DOM常用API总结

    Javascript操作DOM常用API总结 文本整理了javascript操作DOM的一些常用的api,根据其作用整理成为创建,修改,查询等多种类型的api,主要用于复习基础知识,加深对原生js的认 ...

  9. 深入理解DOM节点操作

    × 目录 [1]创建节点 [2]插入节点 [3]移除节点[4]替换节点[5]复制节点 前面的话 一般地,提起操作会想到“增删改查”这四个字,而DOM节点操作也类似地对应于此,接下来将详细介绍DOM的节 ...

随机推荐

  1. 空间不支持openssl解决办法

    windows server2003 系统 IIS6.0 ,支付宝担保交易功能不能用,提示您的空间不支持openssl 解决办法如下:1.在C:\WINDOWS 下打开php.ini 将 extens ...

  2. 客户端使用java,服务端使用c++的corba编程环境搭建

    我们先用c++实现服务端和客户端,然后再用java编写客户端. 1. 首先安装omniORB,omniORB提供 omniidl命令,以及一些头文件和库. omniORB一般是需要你自己进行编译. 2 ...

  3. 微信聊天记录查看器(程序+源码) - iOS版

    本文版权归cxun所有,如有转载请注明出处与本文链接,谢谢!原文地址:http://www.cnblogs.com/cxun/p/4338643.html Updates [2016.10.14]感谢 ...

  4. 用js写的极简的导航菜单,带下拉列表

    太简单了,不多说,但是自己还是写了一会,因为总会出现这样那样小的错误,毕境最近在复习和学习一些前台,欢迎看到的各位能给点改进意见或者其它的,Thank you! 首先是发图,只用CSS写了结构,几乎没 ...

  5. Infinite loop when using cookieless session ID on Azure

    If you use cookieless session ID and deploy them on Azure, you might get infinite loop when you quer ...

  6. iOS_SourceTree忽略CocoaPods文件

    原文作者:iOS_MingXing 原文地址(CSDN):http://blog.csdn.net/ios_mingxing/article/details/51487344 (有更改) 忽略文件内容 ...

  7. windows+caffe(五)——实例2MNIST图片

    1. 数据集 MNIST手写体数据.bmp图片:训练集60K张28*28的,测试集10K张28*28的: 训练集: 测试集: 下载地址: 2. 读取图片名称与标签,保存到trainlist.txt与t ...

  8. java主函数的含义

    下面对java中的主函数进行简单的解释,解决可能困惑大家的问题,下面举的例子在实际开发中几乎不会出现,但是为了解决好奇心,大家可以这么去尝试一下! 我们在java中看到的主函数通常是这样的:publi ...

  9. Network网络

    ifconfig 查看服务器网卡名称 ethtool ethXXX 查看网卡具体信息 要测试一个网卡是否真是1000M的,最保险的说用wget测试一个对方的带宽足够大的下载地址 wget http:/ ...

  10. 解决对含有第三方jar包的项目打包出现java.lang.NoClassDefFoundError问题

    用eclipse普通的打包方式,对含有第三方jar包的项目进行打包.调用方法后一只出现java.lang.NoClassDefFoundError问题. 从网上搜寻,很多都是在MANIFEST.MF文 ...