javascript - 不能将拼接与 querySelectorAll 返回的 NodeList 结合使用

标签 javascript nodelist

我正在使用 querySelectorAll 获取一个 NodeList(本质上是一个类似数组的对象),如下所示:

var elements = document.getElementById('something').querySelectorAll('.lazy'); 

然后,我尝试使用 splice 从此 NodeList 中删除一项:

elements.splice(0, 1);

我收到以下错误:

elements.splice is not a function.

如何从 NodeList 中删除元素?或者,我应该将 NodeList 的每个元素存储在一个数组中并使用拼接吗?

最佳答案

NodeList 不是 Array 或其子类型,因此它无法访问 Array.prototype.splice

如果要使用splice,可以先转成Array:

var elementArray = Array.prototype.slice.call(elements);

编辑:抱歉,拼接和切片混淆了。

关于javascript - 不能将拼接与 querySelectorAll 返回的 NodeList 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33635494/

相关文章:

javascript - 向 HTML 表添加列的最快方法

javascript - 在浏览器中,如何在预印纸上进行排版准确的打印?

javascript - 如何从经典 ASP 的历史记录中获取上一页?

javascript - 从数组中返回与键 :value pair of an object nested in the object I need to return 匹配的对象

java - 使用 JAVA 将标签从 xml 文件导入到另一个文件

javascript - Dojo.NodeList.append()

javascript - 理解nodeJS中的这个日期吗?

javascript - 单击同一类的多个实例不起作用

javascript - 为什么 document.getElementsBy__ 方法不返回 HTMLCollection?

java - 使用java nodelist合并多个xml文件