首页 > 解决方案 > previoussibling 和 previouselementsibling-javascript 的区别

问题描述

我想知道我是否知道 javascript previoussiblingpreviouselementsibling有什么区别。我试过了,但没有找到任何可以比较或描述这一点的问题或文章。也许这是为了我的一点 javascript 知识,但如果解释一下,我很感激。

非常感谢。

标签: javascriptdomcompareelementsiblings

解决方案


previousElementSibling属性返回指定元素的前一个元素,在同一树级别。

previousSibling该属性与,的区别在于,previousSibling将前一个兄弟节点作为元素节点、文本节点或注释节点previousElementSibling返回,而将前一个兄弟节点作为元素节点返回(忽略文本和注释节点)。

//Get the second li element
var liElement = document.getElementById( "target" ) ;

//Get the previous element (→ Text node (line feed and tab character))
var previousSibling = liElement.previousSibling ;
console.log("previousElementSibling::"+previousSibling.data);
console.log("previousSibling.previousElementSibling::",previousSibling.previousElementSibling);

//Get the previous element (→ <li> Element 3 </ li>)
var previousElementSibling = liElement.previousElementSibling ;
console.log("previousElementSibling::",previousElementSibling);
<ul>
	<li>Element-1</li>↓
	<li id="target">Element-2</li>
	<li>Element-3</li>
</ul>


推荐阅读