Как получить элемент из внутреннего DOM. (DOM с-в DOM) - PullRequest
0 голосов
/ 11 апреля 2019

Обзор:

Я пытаюсь получить элемент по id.Проблема, с которой я сталкиваюсь, заключается в работе со сложным DOM.Я понимаю, что могу получить элемент по идентификатору.document.getElementById('#some-id')

Кажется, у DOM, с которым я работаю, есть два внутренних DOMs.У меня вопрос, как мне получить идентификатор из внутреннего DOM.Я приложил снимок экрана, как показано ниже, чтобы продемонстрировать, с чем я работаю, как вы можете видеть на снимке экрана, есть два объекта документа, и объект корневого документа - это то, что я в настоящее время получаю при печати содержимого documentobject.

Вопрос:

Как получить элемент, встроенный в другой DOM.

Снимок экрана:

elements

Пример:

<!--Root DOM-->
    <!DOCTYPE html>
<!--Creates dom object-->
    <iframe id="i1" src="iframe1.html">
        <!--Creates dom object-->
        <iframe id="i2" src="iframe2.html">
            <!--How do you access this element by id.-->
            <div id="flyover">
                innerHtml
            </div>
        </iframe>
    </iframe>

Ответы [ 2 ]

2 голосов
/ 11 апреля 2019

Технически, вы правы - iframe будет иметь собственный DOM.

Вы должны пройти через внешние DOM в подкадр, с которым вы пытаетесь выполнить операции:

window.frames[0].frames[0].document.getElementById("flyout");
1 голос
/ 11 апреля 2019

Вы можете сделать это, добавив id к вашему iframe, чем использовать:

document.getElementById( /* your ID */ ).contentWindow.document.getElementById("flyout");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...