dom 替换节点Element.repalceChild

作者:袖梨 2022-07-02

1, 替换节点。

Element.repalceChild( newNode , oldNode );

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

cssrain">

a

b

c

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

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

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

cssrain.replaceChild( para , msg );

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[i].setAttribute(title,hello);

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

}

hasChildNodes:

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

返回boolean类型。

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

hasChildNodes经常跟 childNodes 一起使用。

比如:

a

b

c

var ps = document.getElementById("cssrain")

if(ps.hasChildNodes){

alert( ps.childNodes.length );

}

相关文章

精彩推荐