试图获取iframe父窗口元素的数据,并附加到iframe的主体

时间:2013-04-26 04:29:06

标签: iframe parent output

我的[父]页面上有一个隐藏元素:

<div class=output-data style="display:none">
    <h1>Testing!</h1>
</div>

现在,我正在尝试在页面上嵌入iFrame以找到.output-data div,将其内容分配给var,然后将其附加到作为文献。所以我的iFrame标记就是这样:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="js/vendor/jquery-1.9.0.min.js"><\/script>')</script>
<script>

    var outputData;
    (function($){

        outputData = $(window.parent.document).find('div.output-data').html();
        $(document.body).append(outputData);

})(this.jQuery);

</script>

换句话说,我正在尝试让我的iFrame假设并显示.output-data div的HTML内容,但它不起作用,我似乎无法弄清楚为什么?我的网络检查员找不到任何东西?有人知道吗?

2 个答案:

答案 0 :(得分:1)

使用选择器上下文参数:

$('div.output-data',window.parent.document).html();

答案 1 :(得分:0)

在父级中定义一个返回所需内容的JS方法(GetData)。 您可以通过window.parent属性从iframe调用此方法。

function GetData(){
  return $(".output-data").html();
}

Ex: from the iframe: var content = window.parent.GetData()