当前位置:首页 > JavaScript

js 实现sublings

2026-04-07 03:31:42JavaScript

在JavaScript中,siblings通常指DOM元素的兄弟节点(即同一父元素下的其他子元素)。以下是几种实现获取兄弟节点的方法:

原生JavaScript实现

通过parentNodechildNodes属性遍历兄弟节点:

function getSiblings(element) {
  const siblings = [];
  let sibling = element.parentNode.firstChild;
  while (sibling) {
    if (sibling.nodeType === 1 && sibling !== element) {
      siblings.push(sibling);
    }
    sibling = sibling.nextSibling;
  }
  return siblings;
}

使用Element属性

利用previousElementSiblingnextElementSibling逐个获取:

function getAllSiblings(element) {
  const siblings = [];
  let prev = element.previousElementSibling;
  let next = element.nextElementSibling;

  while (prev) {
    siblings.unshift(prev);
    prev = prev.previousElementSibling;
  }

  while (next) {
    siblings.push(next);
    next = next.nextElementSibling;
  }

  return siblings;
}

jQuery简化版

如果项目中使用jQuery,可直接调用siblings()方法:

js 实现sublings

const siblings = $(element).siblings();

注意事项

  • 原生方法中nodeType === 1确保只处理元素节点(排除文本节点等)。
  • previousElementSiblingnextElementSibling仅返回元素节点,而previousSibling/nextSibling会包含所有节点类型。
  • jQuery版本会返回所有兄弟元素,包括不同标签名的元素。

标签: jssublings
分享给朋友:

相关文章

js实现图片轮播

js实现图片轮播

实现基础图片轮播 使用HTML、CSS和JavaScript创建一个简单的图片轮播。HTML部分定义轮播容器和图片,CSS设置样式和动画效果,JavaScript处理轮播逻辑。 <div cl…

js实现日历

js实现日历

实现日历的基本思路 使用JavaScript实现日历的核心是动态生成日期表格,并处理月份切换逻辑。需要计算当前月的天数、起始星期几,并动态渲染到页面上。 获取当前日期信息 通过Date对象获取当前年…

js实现图片放大缩小

js实现图片放大缩小

实现图片放大缩小的基础方法 使用CSS的transform: scale()属性可以快速实现图片的放大缩小效果。通过JavaScript动态修改该属性值: const img = document.…

使用js实现

使用js实现

使用JavaScript实现 JavaScript可以通过Math.random()函数生成随机数,结合其他方法可以实现多种随机数生成需求。 // 生成0到1之间的随机小数 const random…

js怎么实现异步

js怎么实现异步

异步实现方法 JavaScript中实现异步操作主要通过以下几种方式: Promise Promise是ES6引入的异步解决方案,用于处理异步操作的成功或失败状态。 const promise =…

js实现显示隐藏

js实现显示隐藏

显示隐藏的实现方法 在JavaScript中,实现元素的显示和隐藏可以通过多种方式完成。以下是几种常见的方法: 修改CSS的display属性 通过改变元素的display属性可以在none(隐藏)…