2012-03-23 1 views
7

Я ищу MDN и W3C ресурсов, чтобы узнать, что именно есть ownerDocument и как это работает?Когда node.ownerDocument не является window.document?

Как я протестировал в любых условиях node.ownerDocument == window.document. Итак, когда это свойство не window.document?

Вы не можете это объяснить?

+1

Тот же самый вопрос возник у меня! –

ответ

6

Один из способов - если узел был получен из iframe или secondary browser window.

Другой способ - это узел из XML-документа, полученного из HTTP-источника via AJAX.

+0

Первый сценарий выглядит неправильно. Внутри другого окна/iframe объект окна отличается. – Mohsen

+1

@Mohsen: Верно, точно. Поэтому, если внешний документ имеет переменную JS с именем 'iframe', которая указывает на iframe, тогда внешний документ увидит' iframe.contentWindow.document.getElementsByTagName ('body') [0] .ownerDocument === iframe.contentWindow. document', * not * 'iframe.contentWindow.document.getElementsByTagName ('body') [0] .ownerDocument === window.document', потому что iframe имеет другой объект' window' (который внешний документ называется 'iframe.contentWindow'). И, аналогично, с дополнительными окнами браузера. – ruakh

+0

Не могли бы вы объяснить второй сценарий? – Jessica

Смежные вопросы