我想删除li除第一个孩子之外的所有内容此代码正在删除所有li..
function clearAll() {
var sidemenu = document.getElementById('side_menu');
while (sidemenu.childNodes.length > 1) {
sidemenu.removeChild(sidemenu.lastChild);
}
}
Run Code Online (Sandbox Code Playgroud)
有什么建议吗?
使用sidemenu.children代替sidemenu.childNodes
sidemenu.children 将只返回给定节点下的元素。
sidemenu.childNodes将同时返回元素和文本节点,这不是您需要的项目列表。如果您检查lastChild它返回的值,它将是一个空文本节点,而不是一个li. 这就是为什么所有的li都被移除了。
function clearAll() {
var sidemenu = document.getElementById('side_menu');
while (sidemenu.children.length > 1) {
sidemenu.removeChild(sidemenu.lastChild);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3097 次 |
| 最近记录: |