我想知道为什么 foo 正在记录一个值,而 bar 却没有。它们在语法上似乎也相同。
编辑:这是一个 X-Y 问题。我的目标是获得班级的最后一个元素foo
我尝试使用这个last-child
。我试过last-of-type
无济于事。
const foo = document.querySelector(".some-element:last-child")
const bar = document.querySelector(".foo:last-child")
console.log('foo >>',foo)
console.log('bar >>',bar)
<article>
<div class="foo">This `div` is first.</div>
<div class="foo">This <span>nested `span` is last</span>!</div>
<div>This <em>nested `em` is first</em>, but this <em>nested `em` is last</em>!</div>
</article>
<ul>
<li class="some-element">1</li>
<li class="some-element">2</li>
<li class="some-element">3</li>
</ul>
您可以使用querySelectorAll()
用于按类选择所有元素。
为了获取带有类的最后一个元素,请尝试以下操作:
const bar = document.querySelectorAll(".foo")
console.log( 'bar >>', bar[bar.length - 1] )
看看选择器概述 https://drafts.csswg.org/selectors/#overview
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)