Передать информацию обратно из iframe? - PullRequest
1 голос
/ 13 сентября 2009

Сейчас я создаю плагин Firefox, который дублирует некоторые функции на моем сайте. Он принимает адрес электронной почты, а затем возвращает информацию пользователю. Самый простой способ сделать это в плагине - использовать Iframe и отобразить эту супер простую форму на моем веб-сайте. Все это прекрасно работает, но чтобы сделать плагин действительно полезным, я бы хотел, чтобы плагин имел доступ к информации, отображаемой в iframe, чтобы он мог использовать ее в текущем окне, в котором находится пользователь.

Можно ли таким способом передавать информацию обратно через Ифраме? Я знаю, что с помощью Iframes существует несколько ограничений доступа к домену, поэтому любая помощь или понимание приветствуются !!

Ответы [ 2 ]

0 голосов
/ 13 сентября 2009

Смысл всего этого упражнения в функциональном тестировании вашего сайта? Если да, то вместо вашего собственного плагина Firefox рассмотрите возможность использования Selenium для автоматизации взаимодействия с веб-сайтами. Он работает со всеми основными браузерами и поддерживает проверку элементов страницы, которые вы пытаетесь сделать (используя XPath). Он также имеет плагин Firefox под названием Selenium IDE , который позволяет удобно «записывать» ваши взаимодействия с веб-сайтом для автоматического воспроизведения позже.

0 голосов
/ 13 сентября 2009

Я сделал это двумя способами.

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

Если это не так, однако ... Я сделал подвох. Я поделюсь этим здесь, хотя, как это может помочь.

Мы создали страницу в другом домене, которая будет вызывать window.parent.parent. Мы помещаем это в скрытый iframe внутри страницы iframed и отправляем ему аргумент строки запроса или два. Это не красиво, но обходит проблемы междоменных сценариев.

Это в основном означает, что у вас есть такие вещи:
admin.example.com
content.example.com - iframe
admin.example.com?contentid=350 - скрытый iframe, который выполняет вызов window.parent.parent.

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