iFrame jQuery在父级中调用jQuery函数

时间:2013-01-18 02:26:34

标签: jquery function iframe

  • 如何在iFrame中获取jQuery以在父级中调用jQuery函数?

以下是iFrame的代码

<script>
    $(document).ready(function (){

        $("#Hey").click(function ()
        {

            parent.WorkPlease(); // does not work
                   window.parent.WorkPlease(); // also does not work
                   // Both hosted on same domain

        });
    });
</script>

这是托管iFrame的父页面上的jQuery

<script type="text/javascript">
$(document).ready(function(){

    function WorkPlease()
    {
$('html,body').animate({scrollTop: $("#iFrame").offset().top}, 5000);// 
    }
});
</script>

1 个答案:

答案 0 :(得分:3)

您可以从iframe访问父级DOM,但在同一个域中。这似乎是你的情况。

您的代码存在的问题是workPlease函数被定义为您传递给document ready事件处理程序的匿名函数的局部变量,而不是window函数。 1}}父页面本身的对象。

尝试:

$(document).ready(function(){

    window.workPlease = function()
    {
        $('html,body').animate({scrollTop: $("#iFrame").offset().top}, 5000);// 
    }
});