Функция вызова Javascript из внешнего домена iframe - PullRequest
1 голос
/ 21 августа 2011

Страница A и страница B находятся в разных доменах.

A вставлено на странице B.

Мне нужно вызвать функцию, которая находится на странице B со страницы A.

Возможно ли это без чего-то вроде иллюминатора ?

В основном я пытаюсь сделать простое push-уведомление (A уведомляет B), не нужно передавать какой-либо контент.

Ответы [ 3 ]

1 голос
/ 21 августа 2011

Существует способ сделать это в HTML5 с помощью обмена сообщениями между окнами .

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

0 голосов
/ 21 августа 2011

Поместите A и B с одним и тем же доменом, разные субдомены в порядке.Затем в фрейме A вы можете вызвать parent.function_name (параметр1, параметр 2).Если вам нужно вызывать эту функцию очень часто, вы можете сделать это:

function p(data, div_id){parent.p(data, div_id);}  

, тогда в iframe A вы можете просто вызвать p (data, div_id), который фактически вызовет функцию страницы B.Я использовал это много кометных потоков.Если вам интересно, вы можете прочитать это, в котором для взаимодействия с данными в основном используется iframe:

http://www.shanison.com/2010/05/10/stop-the-browser-“throbber-of-doom”-while-loading-comet-forever-iframe/

0 голосов
/ 21 августа 2011

Если вы хотите избежать использования этой конкретной библиотеки, вы можете использовать концепцию, на которой она основана, и использовать свою собственную.Вот довольно глубокая статья, в которой описывается техника без использования библиотеки: http://softwareas.com/cross-domain-communication-with-iframes.

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