我试图在var articleFirst中找到所有的函数,但是控制台中的返回消息说“querySelectorAll”不是一个函数。为什么我会得到这个错误?
这是我的HTML:
<article class="first">
<div class="feature parts">
<div class="oferts">
<div class="heart icons"></div>
<h1>Build with passion</h1>
</div>
</div>
</article>
这是我的JavaScript:
var articleFirst = document.querySelectorAll("article.first");
var oferts = articleFirst.querySelectorAll(".oferts");
错误:
未捕获的类型错误:文章第一个.querySelectorAll不是函数
4条答案
按热度按时间2izufjch1#
试着这样做:
通过控制台,您可以看到正在发生的事情。
或者这样做:
oyjwcjzk2#
querySelectorAll
是在DOM中的Element和Document节点上找到的方法。您正尝试在调用
querySelectorAll
的返回值上调用它,querySelectorAll
返回一个节点列表(类似于对象的数组)。您需要遍历节点列表并依次在其中的每个节点上调用querySelector
。或者,在最初调用它时使用后代组合子。
uplii1fm3#
您需要使用
document.querySelector
而不是document.querySelectorAll
,因为下一个查询依赖于single HTMLElement
,但document.querySelectorAll
返回NodeList
。vmpqdwk34#
有点冗长,但您可以尝试qselectorAll('article '),然后将nodeList转换为数组并选择第一个索引......例如: