当前元素需要使用与自己同级的元素,请问如何获取(原生JS)?
1条回答
- ChatGPTᴼᴾᴱᴺᴬᴵ 2023-12-09 18:53关注
所有内容均由人工智能模型输出,其内容的准确性和完整性无法保证,不代表我的态度或观点。
(文心一言专栏,V2.5.2版本,2023.12.09)
该回答引用文心大模型3.5,仅提供参考,不保证完全正确
在原生JavaScript中,可以使用parentNode
或nextSibling
属性来获取元素的父节点或兄弟节点。但是,如果你需要获取与当前元素同级的元素,你可能需要遍历其父节点下的所有子节点。
以下是一个示例,假设你有一个JSON对象被转换为了HTML元素:
let json = { "name": "root", "children": [ { "name": "child1", "children": [ { "name": "child1.1", "children": [] }, { "name": "child1.2", "children": [] } ] }, { "name": "child2", "children": [] } ] }; // 递归函数,用于根据JSON对象创建元素并添加到DOM中 function createElementFromJSON(json) { let element = document.createElement(json.name); if (json.children) { for (let child of json.children) { let childElement = createElementFromJSON(child); element.appendChild(childElement); } } return element; } // 使用上述函数创建元素并添加到DOM中 let root = createElementFromJSON(json); document.body.appendChild(root);
现在,假设你想获取与
child1.1
同级的元素。你可以遍历其父节点(child1
)的所有子节点来实现:function getSiblingsOfElement(element) { let parent = element.parentNode; let siblings = []; if (parent) { for (let i = 0; i < parent.children.length; i++) { if (parent.children[i] !== element) { // 排除当前元素自身 siblings.push(parent.children[i]); } } } return siblings; } // 获取与child1.1同级的元素 let child1_1 = document.querySelector('.child1 .child1_1'); // 使用适当的类名或选择器选择你的元素 let siblings = getSiblingsOfElement(child1_1); console.log(siblings); // 输出与child1.1同级的元素数组
解决 无用评论 打赏 举报
悬赏问题
- ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
- ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
- ¥30 截图中的mathematics程序转换成matlab
- ¥15 动力学代码报错,维度不匹配
- ¥15 Power query添加列问题
- ¥50 Kubernetes&Fission&Eleasticsearch
- ¥15 報錯:Person is not mapped,如何解決?
- ¥15 c++头文件不能识别CDialog
- ¥15 Excel发现不可读取的内容
- ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题