首页 > 其他 > 详细

DOM 元素 操作

时间:2016-03-06 01:27:50      阅读:257      评论:0      收藏:0      [点我收藏+]

lnodeType:返回一个整数,这个数值代表着给定节点的类型。

nodeType属性返回的整数值对应着12 种节点类型,常用的有三种:

Node.ELEMENT_NODE    ---1   -- 元素节点Node.ATTRIBUTE_NODE  ---2   -- 属性节点Node.TEXT_NODE       ---3   -- 文本节点

nodeType 是个只读属性



lcreateElement()按照给定的标签名创建一个新的元素节点。方法只有一个参数:将被创建的元素的名字,是一个字符串.

  var reference =document.createElement(element);

方法的返回值:

是一个指向新建节点的引用指针返回值是一个元素节点,所以它的nodeType属性值等于1

新元素节点不会自动添加到文档里,新节点没有 nodeParent 属性,它只是一个存在于JavaScript上下文的对象.

var pElement =document.createElement("p");

l   //创建一个新的元素

l varpElement=document.createElement("li");

l  //设置属性值

l pElement.setAttribute("id","pid");

l 

l  //获取父元素

l varloveElement=document.getElementById("love");

l  //在父元素中增加子元素

lloveElement.appendChild(pElement);

l

l  //通过id获取刚创建的元素

l varpidElement=document.getElementById("pid");

l  alert(pidElement.getAttribute("id"));


lcreateTextNode()创建一个包含着给定文本的新文本节点。这个方法的返回值是一个指向新建文本节点引用指针。

vartextNode = document.createTextNode(text);

方法只有一个参数:新建文本节点所包含的文本字符串

方法的返回值:是一个指向新建节点的引用指针。它是一个文本节点,所以它的nodeType 属性等于 3.

新元素节点不会自动添加到文档里,新节点没有 nodeParent 属性

 varpElementText=document.createElement("li");

  vartextElement=document.createTextNode("南京");  pElementText.appendChild(textElement);


lappendChild()为给定元素增加一个子节点:                                  

  var newreference = element.appendChild(newChild).             

   给定子节点newChild将成为给定元素节点element最后一个子节点

方法的返回值是一个指向新增子节点的引用指针。该方法通常与 createElement()createTextNode() 配合使用新节点可以被追加给文档中的任何一个元素

 var newliElement=document.createElement("li");

 var textNode=document.createTextNode("北京");

 newliElement.appendChild(textNode);

 document.body.appendChild(newliElement);


lDOM 没有提供insertAfter() 方法

function insertAfter(newElement,targetElement){

   //获取目标元素的父节点

var parentElement=targetElement.parentNode;

   //如果目标元素是最后一个元素,则新元素插入到目标元素的后面

if(parentElement.lastChild==targetElement){

    parentElement.appendChild(newElement);

}else{//如果目标元素不是最后一个元素,则新元素插入到目标元素的的

   //下一个兄弟节点的前面,即目标元素的后面

   parentElement.insertBefore(newElement,targetElement.nextSibling);

}

 }



lremoveChild()从一个给定元素里删除一个子节点

var reference =element.removeChild(node);

返回值是一个指向已被删除的子节点的引用指针。

某个节点被removeChild()方法删除时,这个节点所包含的所有子节点将同时被删除

如果想删除某个节点,但不知道它的父节点是哪一个,parentNode 属性可以帮忙。


lChildNodes:返回一个数组,这个数组由给定元素节点的子节点构成:

  var nodeList = node.childNodes;

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

lfirstChild:该属性返回一个给定元素节点的第一个子节点,返回这个节点对象的指针。

    var reference = node.firstChild;

文本节点和属性节点都不可能包含任何子节点,所以它们的firstChild属性永远会返回null某个元素的firstChild属性等价于这个元素的childNodes节点集合中的第一个节点,即:

  var reference = node.ChildNodes[0];

firstChild属性是一个只读属性

llastChild:对应 firstChild的一个属性。

lnextSibling:返回一个给定节点的下一个兄弟节点。

lparentNode:返回一个给定节点的父节点。

parentNode属性返回的节点永远是一个元素节点,因为只有元素节点才有可能包含子节点。

document 节点的没有父节点

lpreviousSibling:返回一个给定节点的上一个兄弟节点

本文出自 “努力中。。。” 博客,请务必保留此出处http://y645194203.blog.51cto.com/8599045/1747908

DOM 元素 操作

原文:http://y645194203.blog.51cto.com/8599045/1747908

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!