迹忆客 专注技术分享

当前位置:主页 > 学无止境 > WEB前端 >

使用 JS 查找具有特定类的下一个元素

作者:迹忆客 最近更新:2022/12/05 浏览次数:

要使用JavaScript查找具有特定类的下一个元素:

  1. 使用 nextElementSibling 获取下一个元素兄弟。
  2. 在 while 循环中迭代下一个兄弟姐妹。
  3. 检查每个元素的类列表是否包含特定类。

以下是本文示例的 HTML。

index.html

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
  </head>

  <body>
    <div id="box">Box 1</div>

    <div class="second">Box 2</div>

    <div class="third">Box 3</div>

    <script src="index.js"></script>
  </body>
</html>

下面是Js代码

index.js

const box = document.getElementById('box');

let third;

let placeholder = box.nextElementSibling;

while (placeholder) {
  if (placeholder.classList.contains('third')) {
    third = placeholder;
    break;
  }

  placeholder = placeholder.nextElementSibling;
}

console.log(third); // 👉️ div.third

我们使用了一个 while 循环来遍历 id 为 box 的元素的下一个兄弟元素。

nextElementSibling 属性返回紧随调用该方法的元素之后的元素,如果该元素是列表中的第一个元素,则返回 null。

while 循环的基本工作原理是 - 它不断迭代,直到括号之间的表达式返回一个假值或我们中断它。

JavaScript 中的假值是:null、undefined、false、0、""(空字符串)、NaN(不是数字)。

所以我们知道最终,我们要么找到类别为第三的节点,要么到达列表中的最后一个元素并跳出 while 循环。

我们使用 classList.contains 方法检查类 third 是否包含在元素的类列表中。

如果是,我们将元素分配给第三个变量并跳出 while 循环。否则,我们将占位符变量分配给下一个同级元素。

如果具有特定类的元素不存在于该元素的下一个兄弟元素中,则永远不会为第三个变量分配一个元素,并将保持设置为未定义的值。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便