我想知道javascript previoussibling 和 previouselementsibling 有什么区别。我尝试过,但没有发现任何问题可以比较或描述。也许这是出于我对JavaScript的一点了解,但如果能对其加以解释,我将不胜感激。
非常感谢。
最佳答案
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>