Javascript removeChild函数返回TypeError:值不是对象
Javascript removeChild function returning TypeError: Value not an object
我在javascript中创建了一个函数,检查ID为#stage的div元素是否有任何子节点,如果有,则在调用该函数时删除它们。
当我启动网站时,Firebug返回一个错误,它是这样的:TypeError: Value不是object.
这是我的代码:javascript中变量阶段的声明:var stage = document.querySelector("#stage");
给出错误的javascript函数的一部分:
if (stage.hasChildNodes()) {
for (var f1=0; f1<ROWS * COLUMNS; f1++) {
stage.removeChild(stage.firstChild);
}
}
HTML代码:<body>
<div id="stage">
</div>
<script src="code.js">
</script>
</body>
我想删除ID为"stage"的子节点
请帮我解决这个问题。如果你需要更多关于我的问题的信息,请问。谢谢。
如果要删除childNodes,则使用while循环更简单
var parentElement = document.getElementById('stage');
while (parentElement.hasChildNodes()) {
parentElement.removeChild(parentElement.lastChild);
}
我猜,你正在得到一个错误,因为,你只是运行你的for循环与一个条件不匹配的子节点计数。因此,有可能在父元素中获得第一个子元素,而父元素实际上没有任何子元素。因此,父母。FirstChild将返回null。其实父母。removechild需要一个DOM对象,但您的代码将为该对象提供null。这可能是你的问题的一个可能原因。试试这个,
while(stage.hasChildNodes()) {
stage.removeChild( stage.childNodes[0] );
}
相关文章:
- Mongoose TypeError:实例化模式类型的对象时,对象不是函数
- 向Angular作用域对象添加对象数组——TypeError
- TypeError:undefined不是对象(正在评估'newWindow.focus')
- 未能运行构造函数:TypeError:对象#<对象>没有方法'addPlugin'
- 破坏相位器.通过按钮点击图像对象会导致TypeError
- 当我将参数设置为对象时,JavaScript返回TypeError
- cordova 2.0.0 给出了 Uncatch TypeError:对象 0 没有方法 'func'
- Angularjs$http删除$q promise导致TypeError:对象不是函数
- Grunt,TypeError:对象没有方法'拆分'
- 谷歌应用程序脚本-正在尝试使用getUrl.TypeError:在对象工作表中找不到函数getUrl
- Karma+PhantomJS TypeError:undefined不是对象(正在评估scope.jjackpot)
- 得到"TypeError:对象不是函数“”;在forEach循环中使用超级测试/超级代理时
- html5拖动&drop-TypeError:Node.appendChild的参数1不是对象
- 未捕获的typeerror对象没有方法'insertafter'
- TypeError:对象不是函数Node.js
- IE8 TypeError对象没有'不支持方法的此属性
- TypeError:undefined不是使用d3.map的对象
- TypeError:undefined不是对象(正在评估'this.props')-React Nati
- 角度嵌套对象-TypeError:无法读取属性'应用程序'的未定义
- 尚未使用Capybara、PhantomJS测试创建DOM对象(TypeError:undefined)