在javascript操作dom树的时候可能会经常遇到增加,删除节点的事情,比如一个输入框后一个增加按钮,一个删除按钮,点击增加就增加 个输入框,点击删除就删除对应的输入框。在一些js框架,如Prototype中,可以用element.remove()来删除一个节点,核心JS中并 没有这样的方法,IE中有这样一个方法:removeNode(),尝试运行下面的代码
<div><input onclick="removeNode(this)" type="text" value="点击移除该输入框" /></div>
可以发现,这个方法在IE下是好使的,但是在Firefox等标准浏览器中就会报错了 removeNode is not defined,但是在核心JS中有一个操作DOM节点的方法叫:removeChild(),看名字应该就知道是移除子节点的,那么我们就可以变通一下 来实现移除指定的节点了,我们可以先去找到要删除节点的父节点,然后在父节点中运用removeChild来移除我们想移除的节点。我们可以定义一个方 法,就叫removeElement吧。
function removeElement(_element){ var _parentElement = _element.parentNode; if(_parentElement){ _parentElement.removeChild(_element); } }
尝试运行下面的代码,可以在各种浏览器中正确执行了。
<script type="text/javascript"> function removeElement(_element){ var _parentElement = _element.parentNode; if(_parentElement){ _parentElement.removeChild(_element); } } </script> <div><input onclick="removeElement(this)" type="text" value="点击移除该输入框" /></div>
以上就是本文的全部内容,了解更多JavaScript的语法,大家可以查看:《JavaScript 参考教程》、《JavaScript代码风格指南》,也希望大家多多支持北冥有鱼。
您可能感兴趣的文章:
- JS实现添加,替换,删除节点元素的方法
- Js 获取HTML DOM节点元素的方法小结
- JS简单添加元素新节点的方法示例
- js 获取元素所有兄弟节点的实现方法
- javascript删除一个html元素节点的方法
- JS 使用for循环遍历子节点查找元素
- JS获取节点的兄弟,父级,子级元素的方法
- js创建元素(节点)示例
- js遍历子节点子元素附属性及方法
- JavaScript实现获取某个元素相邻兄弟节点的prev与next方法
- JavaScript 获取元素在父节点中的下标(推荐)
- JS简单获得节点元素的方法示例