2010-01-12 3 views
4

Мне нужно вызвать функцию JavaScript в открывающемся окне, нажав кнопку в дочернем элементе.Вызов функции JavaScript в открывателе

Я думал, что следующее будет работать, но это не так.

window.opener.MyFunction() 
+0

Это должно сработать. Когда вы говорите, что это не так, можете ли вы дать больше информации? –

+0

Является ли ваша 'MyFunction' прикрепленной к открывающему окну? –

+1

Функция объявляется в открывающемся окне. Даже если я меняю функцию на функцию close(), она не работает. Может ли использование Google Chrome быть частью проблемы? – Brian

ответ

0

ли оба окна на одной и ту же области (например, foo.com?) Это может быть заблокировано из-за причины межсайтовой безопасности сценариев.

+0

Сэм домена. Фактически они оба включены в один и тот же файл с переменной GET, используемой для различения – Brian

2

Оказалось, что MyFunction() находится внутри инструкции jQuery document.ready. Это сработало хорошо после того, как я изменил это. Интересно, однако, window.opener.close() все еще не работает.

+0

. Вы должны принять свой собственный ответ, для этого есть значок. ;) И я считаю, что Chrome (и другие браузеры) специально не позволит вам закрыть окна, которые не были открыты скриптом. –

-1

Попробуйте использовать:

window.onload = функция() { MyFunction(); }

0

Это работает для меня на IE9. Мне нужно открыть отдельное окно для загрузки пользователем документа и при успешной загрузке я должен указать открывающееся окно для выполнения какой-либо задачи. Возможно, другой браузер, о котором вы говорили, не поддерживает это.

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