2012-02-20 3 views
0

У меня есть функция в iFrame (том же домене), которую я хочу вызвать из всплывающего окна.вызов функции javascript в iframe из window.opener

Так что в основном я хочу сделать что-то вроде window.opener.document.getElementById ('topFrame'). ContentWindow.setActive ('1');

В окне window.opener из всплывающего окна у меня есть iframe с идентификатором «topFrame» (и имя «topFrame» в случае, если это лучшее решение), в котором должна выполняться функция setActive ('1'). Однако приведенный выше код не работает, и google действительно не помогает найти решения для этого конкретного случая.

У кого-нибудь есть идея?

Thx

+0

В какой момент это не работает? Пробовали ли вы ведение журнала, чтобы убедиться, что вы успешно получили ссылку на iframe и т. Д.? Если вы можете определить, какая «точка» разбивает его, это поможет отладить проблему. – GregL

ответ

0

Ваша линия должна реально работать и проблема, вероятно, вопрос времени: скорее всего, ваш IFrame не закончил загрузку в то время вы пытаетесь вызвать его функцию. Помещение вашего звонка после load или DomReady должно сделать трюк.

(Вы также можете поэкспериментировать, завернув свой вызов в тайм-аут и посмотрите, работает ли он в более поздней точке).

0

, если вы открываете всплывающее из окна IFrame, то вы должны использовать

window.opener.setActive('1'); 

потому что window.opener сам будет возвращать вам окно IFrame .it может быть так, потому что я был также совершить эту ошибку , надеюсь, что ваша проблема решена :)

Смежные вопросы