Javascript学习第一季(7

 

上篇文章我们讲了 dom方式 创建节点,复制节点,插入节点。

今天我们将讲 删除节点,替换节点,查找节点等。

 

直接从方法说起:

<!–[if !supportLists]–>1, <!–[endif]–>删除节点。removeChild():

 

 

 

 

a

 

 

b

 

 

c

 

 

 

 

如果不知道要删除的节点的父节点是什么?可以使用parentNode属性。

比如:

 

 

 

 

a

 

 

b

 

 

c

 

 

 

 

 

<!–[if !supportLists]–>2, <!–[endif]–>替换节点。repalceChild()

element.repalceChild( newNode , oldNode ); // 新节点是客人,肯定先服务他咯。。oldNode必须是Element的一个子节点。

例子:

 

 

 

 

a

 

 

b

 

 

c

 

 

 

 

 

3,查找节点

相对上面的方法,查找节点是比较简单的。

因为很多人都用过。(记得我认识js的第一句就是getElementById();)

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”);

}

 

<!–[if !supportLists]–>4, <!–[endif]–>设置/获取属性节点。

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”);

获取的时候,如果属性不存在,则返回空,注意ieff返回不同。

  

   

aaaa

 

        

bbbb

 

        

 

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

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

// do something

 }

 

5,hasChildNodes:

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

返回boolean类型。

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

hasChildNodes经常跟 childNodes 一起使用。

比如:

 

 

 

 

a

 

 

b

 

 

c

 

 

 

 

 

 

 

大家自己动动手写写,不然光看记忆性不好。

好了,讲到这里,明天继续讲。

今天讲了 dom方式删除节点,替换节点,查找节点, 获取属性等。。。

操作DOM的方法也差不多了。

明天我们讲DOM 属性…..

 

 

 

如果还有不懂,可以google 搜索资料.

或者联系我 ,可以去我的blog 给我留言 :

http://www.cssrain.cn/LoadMod.asp?plugins=GuestBookForPJBlog

 

 

版权声明:本文为JemBai原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/JemBai/archive/2008/08/13/1266787.html