什么是this.parentElement?

Aut*_*cus 10 javascript javascript-events

pg.myfunc = function(){
    var i = 1, j = 2;
    this.selected = 1;
    xx.newObject = this.parentElement;

...
Run Code Online (Sandbox Code Playgroud)

xx.newObject = this.parentElement;做什么?

bob*_*nce 15

它与以下内容相同this.parentNode:它为您提供包含thischildNode的节点.this将来pg,可能是某种元素; this.parentNode将是包含它的元素,或者document对象if pg是根元素.

parentElement是一个非标准的IE扩展.由于IE也支持标准属性parentNode,parentElement因此永远不要使用.

或者,也许它只是一个带有属性的任意对象parentElement,在这种情况下它可以是任何东西.从该代码中找不到真正的方法,但是myfunc在Element节点上设置任意属性是不常见的.


Jus*_*ier 6

它保存了对父元素的引用this.例如:

<div id="parent">
  <span id="child">
  </span>
</div>
Run Code Online (Sandbox Code Playgroud)

在这种情况下,如果this对应于child跨度,则parentElement对应于parentdiv.

这就是说,你应该经常使用parentNode,而不是parentElement,因为parentElement是专有的,(我相信)只有IE浏览器的工作原理.根据MSDN:

没有适用于此属性的公共标准.