比如用children或getElementsByTagName之类的,获得了好几个html元素组成的集合。此时我想删掉其中的第3个,代码如下:
var p = elm.parentNode.children;
此时,这个p的类型是object,有点类似于数组但又不是,因为我不能用p.splice(2,1)这样的方法来删掉里面的元素。
我想请问一下,如何实现我删除其中某个元素的需求呢?难道必须要把此对象转换成数组?
5 回答
慕桂英3389331
TA贡献2036条经验 获得超8个赞
简单点,将获取到的类数组的对象转换成数组即可用数组方法操作,或者调用apply方法试试:
给出第一种解法:
/**第一种方法**/
var a = document.getElementsByTagName("div");
var c = (new Array()).splice.apply(a,[0]);
c.splice(0,3);
alert(c.length)
开满天机
TA贡献1786条经验 获得超13个赞
function removeElement(node){
node.parentNode.removeChild(node);
}
例子:
HTML <select id="foo"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> </select> Javascript // remove child "option" element with a "value" attribute equal to "2" $("#foo > option[value='2']").remove(); // remove all child "option" elements $("#foo > option").remove();
添加回答
举报
0/150
提交
取消