虽然有一个原生的“nextSibling”属性,但是如何获取“lastSibling”呢?
来自文章
function lastSibling(node){
var tempObj=node.parentNode.lastChild;
while(tempObj.nodeType!=1 && tempObj.previousSibling!=null){
tempObj=tempObj.previousSibling;
}
return (tempObj.nodeType==1)?tempObj:false;
}
Node.parentNode.lastChild
function lastSibling(node) {
return node === node.parentNode.querySelector(node.nodeName + ':last-of-type');
}
没有直接访问最后一个兄弟的方法;你只需要遍历所有兄弟直到到达最后一个。
node.children[node.children.length - 1]
console.log(node.previousElementSibling.className);