parentElement和parentNode的区别

有好多人一直不明白parentElement和parentNode的区别,网上说的也不是很清楚。

第一点parentElement是ie专用的,就是说在firefox(ff)浏览器里是不能使用的,一般情况parentNode可以取代parentElement的所有功能。

第二点就如名字所说,parentElement匹配的是parent为element的情况,而parentNode匹配的则是parent为node的情况。element是包含在node里的,它的nodeType是一,以上是我的猜测,下面是我做的测试。

window.onload=function(){ alert(document.body.parentNode.parentNode) }

window.onload=function(){ alert(document.body.parentElement.parentElement) }

理论上,应该返回"document"节点(node),但是它不是element对象,因此前面的代码返回object,而后面的代码返回null。

IE有很多专用的东西啊,难怪我写的东西有时在FF下完全运行不了。大家还是少用IE专有的东西为妙,向标准化看齐,尽管不能完全做到表转化。

你可能感兴趣的:(element)