Определить документ элемента DOM? - PullRequest
0 голосов
/ 25 декабря 2009

Я получаю ссылку на элемент DOM из редактора WYSIWYG.

Я не очень хорошо понимаю JS и WYSIWYG Editor (CKEditor), но он почему-то кажется указателем или другой прямой ссылкой на фактический элемент, который находится в IFRAME в WYSIWYG-редакторе. По крайней мере, когда я console.log элемент, я получаю ссылку, которая при нажатии открывает фактический элемент в Firebug.

Есть ли способ получить ссылку на объект document этого элемента в IFRAME?

Ответы [ 2 ]

3 голосов
/ 25 декабря 2009

Если у вас есть ссылка на элемент DOM, вы можете использовать свойство ownerDocument:

var ownerDoc = someElement.ownerDocument;
1 голос
/ 25 декабря 2009

Я не знаю этого конкретного редактора, но если он имеет достаточно нормальную реализацию DOM, каждый узел (включая элемент DOM, на который вы получаете ссылку) имеет свойство parentNode только для чтения, которое ссылается на его родительский узел. Следуя цепочке ссылок parentNode, вы перемещаетесь вверх по дереву DOM и должны в конечном итоге достичь желаемого значения * 1003.

(Свойство ownerDocument предлагает более быстрое решение, но оно не поддерживалось в некоторых старых браузерах, таких как IE 5.5 - если вам не нужно беспокоиться о таких проблемах с «археологией», это нормально, но parentNode работает еще шире).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...