Javascript 在mdn web文档中,Element.querySelector方法表示它应该是后代,但示例显示了其他情况
我正在从MDN web文档学习JavaScript。我正在研究Javascript 在mdn web文档中,Element.querySelector方法表示它应该是后代,但示例显示了其他情况,javascript,html,queryselector,Javascript,Html,Queryselector,我正在从MDN web文档学习JavaScript。我正在研究元素.querySelector()方法 它返回的第一个元素是调用它的元素的后代,该元素与指定的选择器组匹配 但有一个例子与这一事实相矛盾 var baseElement=document.querySelector(“p”); document.getElementById(“输出”).innerHTML= (baseElement.querySelector(“div span”).innerHTML) 原始内容 内段 内跨
元素.querySelector()
方法
它返回的第一个元素是调用它的元素的后代,该元素与指定的选择器组匹配
但有一个例子与这一事实相矛盾
var baseElement=document.querySelector(“p”);
document.getElementById(“输出”).innerHTML=
(baseElement.querySelector(“div span”).innerHTML)代码>
原始内容
内段
内跨
内段
输出
元素。querySelector()
首先将传递给.querySelector()
方法的CSS选择器应用于整个文档,而不是调用.querySelector()
的基本元素。这样做是为了生成潜在元素的初始集合
生成初始的潜在元素集后,将过滤潜在元素列表,以仅保留作为基本元素后代的元素。最后,返回此筛选列表中的第一个元素
在代码示例中,首先搜索整个文档以查找与div span
匹配的元素。由于整个文档中只有一个元素与div span
选择器匹配,所以潜在元素的初始集合只包含一个span
元素。然后,检查该span
元素以查看它是否是baseElement
的后代。因为,在这种情况下,它是
返回baseElement
我上面解释的内容写在中的“返回值”标题下
元素的整个层次结构是
匹配时考虑,包括元素集之外的元素
包括基本元素及其子元素;换句话说,选择器
首先应用于整个文档,而不是baseElement,以
生成潜在元素的初始列表。结果元素
然后检查它们是否是baseElement的后代。这个
这些剩余元素的第一个匹配项由
querySelector()方法