当前位置: 首页 > 图文教程 > 网络编程 > Javascript > javascript removeChild 使用注意事项

Javascript
JMenuTab简单使用说明
简单的JS多重继承示例
js另类写法
javascript cookie解码函数(兼容ff)
Javascript的一种模块模式
详解new function(){}和function(){}() 区别分析
YUI 读码日记之 YAHOO.lang.is*
用JS得到字符串中出现次数最多的字母
YUI 读码日记之 YAHOO.util.Dom - Part.1
Javascript YUI 读码日记之 YAHOO.util.Dom - Part.2 0
Javascript YUI 读码日记之 YAHOO.util.Dom - Part.3
javascript YUI 读码日记之 YAHOO.util.Dom - Part.4
利用js对象弹出一个层
js用图作提交按钮或超连接
通过 Dom 方法提高 innerHTML 性能
javascript 通用滑动门tab类
二行代码解决全部网页木马
JavaScript的面向对象方法以及差别
悟透JavaScript整理版
try finally 妙用,防止内存泄漏

Javascript 中的 javascript removeChild 使用注意事项


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 379 ::
收藏到网摘: n/a

removeChild的注意事项。大家可以参考下。 假如:一段普通的代码:
其中gift_list为一个table的id
复制代码 代码如下:

var giftBody = document.getElementById("gift_list").getElementsByTagName("tbody")[0];
var giftTrs = giftBody.getElementsByTagName("tr");
for (var i=0;i<giftTrs.length;i++)
{
giftTrs[i].removeChild(giftTrs[i]);
}

那么这时候只会删除第一行,因为当删除了一个之后,行的位置会向前移动一位。
giftTrs.length也会相应减一。
因此正确的操作方法是:
复制代码 代码如下:

var giftBody = document.getElementById("gift_list").getElementsByTagName("tbody")[0];
var giftTrs = giftBody.getElementsByTagName("tr");
var len = giftTrs.length; //需要将giftTrs.length的length属性存储起来
for (var i=0;i<len;i++)
{
giftBody.removeChild(giftTrs[0]);
}