Передать переменные jquery между iframe и parent - PullRequest
20 голосов
/ 14 января 2011

Как мне работать с jQuery и iframe. Получить и передать var от iframe до body и от body до iframe. У меня есть следующий пример. Как я могу нажать на кнопку в iframe и заставить ее вступить в силу на body #test. Как насчет готового var x в iframe.

<body>
var x = "whatever";
<div id"test"></div>
<iframe width="200px" height="200px" src="page.html"></iframe>
</body>

Внутри page.html у меня есть

<button>clickme</button>
<script>
var elm = $('<span>content</span>');
    elm.appendTo('#test')
</script>

Ответы [ 3 ]

34 голосов
/ 14 января 2011
$("#myid", top.document); 

или

$("#myid", parent.document.body); 

Это даст вам доступ к контейнеру IFRAME

согласно: http://groups.google.com/group/jquery-en/browse_thread/thread/5997ef4a60a123af

14 голосов
/ 20 августа 2011

С точки зрения родителей:

var iFrameValue = $('#iframe').get(0).contentWindow.myLocalFunction();

OR

var iFrameValue = $('#iframe').get(0).contentWindow.myLocalVariable;

С точки зрения iframe

<script type="text/javascript">

var myLocalVariable = "hello";

function myLocalFunction () {
    return "hello";
}

</script>
2 голосов
/ 07 апреля 2011

Вы можете использовать свойства contentWindow и contentDocument, если poilicy того же происхождения не является проблемой. Я установил демо . Просмотр кода для демонстрации и кода для iframe .

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