Можно ли манипулировать переменной в родительском окне изнутри iframe? - PullRequest
0 голосов
/ 25 октября 2011

В моем iframe есть переменная.Я хочу получить доступ к документу, содержащему iframe, и поиграть с переменной, определенной в javascript.

например,

<html>
<head>
<script>var a=0;</script> 

</head>
<body>

<iframe id=playmate src="document2.htm" height="150px" width="100%" scrolling="no"       
 border="0" frameborder="0"></iframe>>

</body>
</html>

Теперь в document2.htm у меня есть скрипт, который должен получить доступ к var a и манипулировать им.,Могу ли я получить к нему доступ напрямую, используя jquery или простой ванильный javascript?

Это не междоменный iframe.Promise.Тот же домен.Хочу, чтобы они хорошо играли вместе.

Раньше я делал это, заставляя переменную вставлять скрытый ввод из одного документа в другой, но с появлением ajax и что мне было интересно, еслиЯ мог бы просто манипулировать им.

Так что ранее я записывал функцию в заголовок документа, где, если бы моя переменная что-то делала, мой скрытый ввод в playmate document2 обновлялся.Тогда document2 мог просто использовать скрытый ввод, и все были счастливы.Когда document2 воспроизводится с переменной, он вставляет результат в скрытый ввод в удерживающем документе, а затем var a может правильно воспроизводиться с новым результатом.

Я хочу знать, возможно ли теперь воспроизведение документа playmate2 для воспроизведенияс var a в скрипте без необходимости скрытого ввода.Было бы очень интересно.

У кого-нибудь есть идеи, как это сделать?Я использую jquery, если это облегчит задачу.

Я попытался использовать этот сценарий в document2:

 var c=window.document.parent.a;

Но когда я выводил var c, он сообщал мне его номер.Беспокоить.Пожалуйста помоги.Или я должен сделать свой скрытый метод ввода.

1 Ответ

10 голосов
/ 25 октября 2011

Вы были близки. Это на самом деле:

window.parent.a

(window.parent возвращает объект окна, а переменные являются потомками объекта окна, а не объекта документа.)

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