有这么一段代码:
<ul id="demo">
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
var ul = document.getElementById('demo');
var liList = ul.getElementsByTagName('li');
for (var i = 0; i < = liList.length; i++) {
ul.removeChild(liList[i]);
}
运行代码后 ,发现只剩下 节点b 了。
var ul = document.getElementById('demo');
var liList = ul.getElementsByTagName('li');
for (var i = 0; i < liList.length; i++) {
ul.removeChild(liList[0]);
}
运行上面代码后,发现只剩下 节点c 了。
最后把length 提取出来, 先定义,缓存起来。
var ul = document.getElementById('demo');
var liList = ul.getElementsByTagName('li');
var lilength = liList.length;
for (var i = 0; i < lilength; i++) {
ul.removeChild(liList[0]);
}
运行代码,才真正3个li都被删除。
通过这3个例子的对比,相信你已经发现其中的问题。
可以看出removeChild 删除元素后,对DOM的即时影响。
分享到:
相关推荐
需要注意的是,在删除DOM节点时,如果之前有通过脚本为这些节点绑定了事件监听器或其他数据,那么这些绑定的监听器或数据也会被一同删除,因此要确保在删除节点之前已经妥善处理了这些绑定。 此外,虽然可以直接...
同时,避免不必要的DOM操作,因为这可能会导致页面重绘,影响性能。 综上所述,实现这个功能需要扎实的JavaScript基础,熟练的DOM操作,良好的事件处理逻辑,以及一定的前端开发经验。通过实践这个项目,你不仅可以...
- **添加/删除元素**:使用`appendChild()`、`removeChild()`等方法添加或删除DOM节点。 #### 六、事件处理 - **事件绑定**:使用`addEventListener()`或`attachEvent()`方法将事件处理器绑定到DOM元素上。 - **...
以下是对该主题的深入探讨: #### 1. **JavaScript简介** - **定义**:JavaScript是一种轻量级的解释型或即时编译型的编程语言,常用于Web应用开发。 - **历史背景**:1995年由Netscape公司的Brendan Eich设计...
2. **添加功能**:在JS留言板中,添加功能意味着用户可以输入文本,点击“发送”按钮后,新的留言会即时显示在页面上。这涉及到DOM(Document Object Model)操作,如创建新的DOM元素(如`<div>`、`<p>`等)来存储...
- **定义**:JavaScript是一种轻量级的解释型或即时编译型的编程语言。它既是一种强大的客户端脚本语言,用于HTML网页开发,同时也是一种服务端编程语言,如Node.js。 - **历史**:由网景公司(Netscape)的布兰登·...
1. **基础语法**:JavaScript的基础包括变量声明(var、let、const)、数据类型(如字符串、数字、布尔、数组、对象)、控制流程(if...else、for、while循环)和函数。理解这些基本概念是学习JavaScript的第一步。 ...
JavaScript 是一种轻量级的解释型或即时编译型编程语言,常用于Web应用程序的客户端脚本语言,能够实现交互性效果。 **3.2 基本语法** - **变量**: 如 `var x = 10;`。 - **数据类型**: 数值、字符串、布尔值、...
例如,通过getElementById、getElementsByClassName、getElementsByTagName等方法选取元素,使用innerHTML、textContent属性改变元素内容,以及appendChild、removeChild等方法处理元素的增删。 3. **事件处理**:...
例如,使用document.getElementById、querySelectorAll等方法选择元素,innerHTML、textContent属性改变元素内容,appendChild、removeChild操作元素。 7. **AJAX与Fetch API**:用于异步获取服务器数据,更新部分...
JavaScript 是一种解释型语言,在浏览器中被即时解释执行。当浏览器加载含有 JavaScript 代码的网页时,会自动解析并执行这些代码,从而实现动态效果。JavaScript 还可以与 HTML 和 CSS 紧密结合,共同构建复杂的 ...
4. **DOM操作**:通过JavaScript操作HTML元素,如getElementById, getElementsByClassName, appendChild, removeChild等。 5. **事件处理**:addEventListener, removeEventListener, 以及各种浏览器事件。 6. **...