Найти фрейм внутри другого фрейма? - PullRequest
3 голосов
/ 19 июля 2011

У меня есть id родителя, но нет ребенка iframe.

Есть ли способ вернуть iframe в родительском iframe?

Или все iframe с в пределах определенного iframe?

Использование jQuery для поиска элемента с $('iframe'), похоже, не работает.

Ответы [ 2 ]

4 голосов
/ 19 июля 2011

Если атрибут iframe src имеет тот же домен, протокол и порт, то вы настроены. Если нет, вы ничего не можете сделать из-за Одинаковой политики происхождения .

Если вы не нарушаете политику ...

Обычный JavaScript

var iframe = document.getElementsByTagName('iframe')[0],
    iframeDocument = iframe.contentWindow || iframe.contentDocument,
    internalIframes = iframeDocument.getElementsByTagName('iframe');

Вам необходимо использовать эксплойт для оценки короткого замыкания ||, поскольку IE отличается.

JQuery

var internalIframes = $('iframe:first').contents().find('iframe');
0 голосов
/ 22 октября 2011

var childFrames = frames ['parentId']. Frames

Сделайте так, чтобы рекурсив и начало с top.frames также соответствовало вашим потребностям ... и было намного меньше тяжелого DOM "getElementsByTagName"

или если вы находитесь в дочернем фрейме, но вам просто нужно получить дескриптор фрейма, вы получите идентификатор: window.frameElement.id

**, протестированный только в IE(

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