js 实现sublings
在 JavaScript 中,可以通过 DOM 操作获取元素的兄弟节点(siblings)。以下是几种常见的实现方法:
获取所有兄弟节点
使用 parentNode.children 结合过滤当前元素:
function getAllSiblings(element) {
const children = Array.from(element.parentNode.children);
return children.filter(child => child !== element);
}
获取下一个兄弟节点
使用 nextElementSibling 属性:

const nextSibling = element.nextElementSibling;
获取上一个兄弟节点
使用 previousElementSibling 属性:
const previousSibling = element.previousElementSibling;
获取所有后续兄弟节点
递归获取所有 nextElementSibling:

function getNextSiblings(element) {
let siblings = [];
while (element = element.nextElementSibling) {
siblings.push(element);
}
return siblings;
}
获取所有前序兄弟节点
递归获取所有 previousElementSibling:
function getPreviousSiblings(element) {
let siblings = [];
while (element = element.previousElementSibling) {
siblings.push(element);
}
return siblings;
}
使用 jQuery 方法
如果项目中使用了 jQuery,可以更简洁地获取兄弟节点:
// 所有兄弟节点
const siblings = $(element).siblings();
// 下一个兄弟节点
const next = $(element).next();
// 上一个兄弟节点
const prev = $(element).prev();
这些方法可以根据具体需求选择使用,原生 DOM 方法适用于不依赖 jQuery 的项目,而 jQuery 方法则提供了更简洁的语法。






