JS获取子节点、父节点和兄弟节点

js获取子节点

获取指定标签子节点

var a = document.getElementById("test").getElementsByTagName("div");

获取所有子节点

//数组格式,不包含换行和空格
var getFirstChild = document.getElementById("test").children[0];
//数组的格式,包含换行和空格。
var b =document.getElementById("test").childNodes;
//去掉换行的空格
for(var i=0; i<b.length;i++){
    if(b[i].nodeName == "#text" && !/\s/.test(b.nodeValue)){
        document.getElementById("test").removeChild(b[i]);
    }
}
//补充
document.getElementById("test").childElementCount; //可以直接获取长度 同length

获取第一个子节点

//不会匹配换行和空格信息。
var getFirstChild = document.getElementById("test").firstElementChild;
//获取第一个子节点,包含换行和空格,有时候会返回undefined
var getFirstChild = document.getElementById("test").firstChild;

获取最后一个子节点

// 获取最后一个子节点,规则同上
var getLastChild = document.getElementById("test").lastElementChild;
var getLastChild = document.getElementById("test").lastChild;

js获取父节点

var p = document.getElementById("test").parentNode;
var p1 = document.getElementById("test").parentElement;
var p2 = document.getElementById("test").offsetParent;//获取所有父节点

js获取兄弟节点

var brother1 = document.getElementById("test").parentNode.children[1];
//获取上一个兄弟节点
var brother2 = document.getElementById("test").previousElementSibling;//直接匹配节点
var brother3 = document.getElementById("test").previousSibling;//包含换行空格
//获取下一个兄弟节点
var brother4 = document.getElementById("test").nextElementSibling;
var brother5 = document.getElementById("test").nextSibling;
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夜会美丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值