当前位置:首页 > JavaScript

js 实现sublings

2026-02-02 10:02:35JavaScript

实现 siblings 的方法

在 JavaScript 中,siblings 是指当前元素的所有兄弟元素(即共享同一个父元素的元素)。以下是几种实现方式:

使用纯 JavaScript 实现

通过 parentNodechildren 属性遍历兄弟元素:

js 实现sublings

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;
}

使用 ES6 和 Array.filter

利用 Array.fromfilter 方法简化代码:

js 实现sublings

function getSiblings(element) {
  return Array.from(element.parentNode.children)
    .filter(child => child !== element);
}

使用 jQuery 实现

如果项目中已引入 jQuery,可以直接使用 siblings() 方法:

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

扩展原生 Element 原型

为所有 DOM 元素添加 siblings 方法:

Element.prototype.siblings = function() {
  return Array.from(this.parentNode.children)
    .filter(child => child !== this);
};

// 使用方式
const siblings = element.siblings();

注意事项

  • 纯 JavaScript 方法需要考虑节点类型(nodeType === 1 表示元素节点)。
  • jQuery 方法简洁但需要引入库。
  • 扩展原型可能影响全局环境,需谨慎使用。

标签: jssublings
分享给朋友:

相关文章

js实现验证码

js实现验证码

实现验证码的JavaScript方法 生成随机验证码 使用Math.random()生成随机字符串,结合数字和字母: function generateCaptcha() { const cha…

js实现倒计时

js实现倒计时

使用 setInterval 实现倒计时 通过 setInterval 定时器每秒更新剩余时间,适用于简单倒计时场景。 function countdown(seconds, callback)…

js实现计算器

js实现计算器

实现基础计算器功能 使用JavaScript创建一个基础计算器需要处理数字输入、运算符逻辑和结果显示。以下是一个简单的实现示例: let currentInput = '0'; let previ…

js实现图片轮播

js实现图片轮播

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

js 进度条的实现

js 进度条的实现

使用 HTML 和 CSS 创建基础进度条 HTML 结构可以简单使用一个 div 元素作为容器,内部嵌套另一个 div 表示进度: <div class="progress-containe…

js实现图片放大缩小

js实现图片放大缩小

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