javascript - 在javascript中通过类名获取最后一个元素的最短方法

标签 javascript dom

我知道通过使用jQuery,您可以轻松地使用:last选择器来获取最后一个元素。

$(".some-element:last")

尽管如此,这不适用于 JavaScript。

document.querySelectorAll(".some-element:last")

javascript 中执行相同操作的最佳和最短方法是什么?

最佳答案

看看Selectors Overview

E:last-child

an E element, last child of its parent

console.log(document.querySelectorAll(".some-element:last-child"))
<ul>
  <li class="some-element">1</li>
  <li class="some-element">2</li>
  <li class="some-element">3</li>
</ul>

--更新--

如果您有其他元素不共享相同的类名,您可以尝试不同的方法,例如使用

E:nth-last-of-type(n)

an E element, the n-th sibling of its type, counting from the last one

var lastLiItem = document.querySelectorAll("li:nth-last-of-type(1)");
var lastSomeElement = document.querySelectorAll("li:nth-last-of-type(2)");

console.log("This is the last li item in the list: ", lastLiItem[0]);
console.log("This is the last li item with class .some-element in the list: ", lastSomeElement[0]);
<ul>
  <li class="some-element">1</li>
  <li class="some-element">2</li>
  <li class="some-element">3</li>
  <li>4</li>
</ul>

或者只获取类为 .some-element 的最后一个元素,只需这样做

var someElementsItems = document.querySelectorAll(".some-element");
console.log(someElementsItems[someElementsItems.length -1])

关于javascript - 在javascript中通过类名获取最后一个元素的最短方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39223343/

相关文章:

javascript - addEventListener 不适用于默认参数

javascript - 复制到剪贴板包括目标元素的父元素

javascript - var 关键字的用途是什么以及何时应该使用它(或省略它)?

javascript - 从 Typescript 1.6.2 中的内置数组扩展的类在使用 [] 运算符时不会更新长度

javascript在视口(viewport)中找到最近的元素并滚动到它

javascript - 无法从 DOM 中的输入文本获取值

javascript - Electron 低质量 native 图像到JPG

javascript - gulp-uncss 删除使用 javascript 添加的类

javascript - 将 DOM 事件处理程序与 getElementsByClassName 一起使用

javascript - 在模型更改时刷新 Dojo MVC 组不适用于复杂对象