dom4j|dom 替换节点Element.repalceChild

更新时间:2015-06-19    来源:Dom教程    手机版     字体:

【www.bbyears.com--Dom教程】

1, 替换节点。

Element.repalceChild( newNode , oldNode );

OldNode必须是Element的一个子节点。

 

 a 

 b 

 c 

 

 

<script>

var cssrain = document.getElementById("cssrain");

var msg =  document.getElementById("b");

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

cssrain.replaceChild( para , msg  );

</script>

2, 设置/获取属性节点。

setAttribute();//设置

例子:

var a  = document.createElement(“p”);

a.setAttribute(“title”,”my demo”);

不管以前有没有title属性,以后的值是 my demo。

getAttribute();//获取

例子:

var a =document.getElementById(“cssrain”);

var b = a.getAttribute(“title”);

获取的时候,如果属性不存在,则返回空,注意ie和ff返回不同,可以看我以前的例子。

返回虽然不同,但是可以用一个方法来判断。

if(a.getAttribute(“title”) ){   }

3, 查找节点。

getElementById();

返回一个对象, 对象拥有 nodeName , nodeType , parentNode , ChildNodes 等属性。

getElementsByTagName() 查找标签名的所有元素。

返回一个集合,可以用循环取出每个对象,对象拥有 nodeName , nodeType , parentNode , ChildNodes 等属性。

例子:

  var ps = document.getElementsByTagName(“p”);

for(var i=0 ; i< ps.length ; i++){

           ps[i].setAttribute(“title”,”hello”);

//也可以使用:  ps.item(i).setAttribute("title","hello");

}

hasChildNodes:

由名字就可以知道,是判断元素是否有子节点。

返回boolean类型。

文本节点和属性节点不可能有子节点,所以他们的hasChildNodes 永远返回false;

hasChildNodes经常跟 childNodes 一起使用。

比如:

 

 a 

 b 

 c 

 

 

<script>

var ps = document.getElementById("cssrain")

if(ps.hasChildNodes){

        alert( ps.childNodes.length  );     

}

</script>

本文来源:http://www.bbyears.com/wangyezhizuo/15939.html

猜你感兴趣