可以't从iframe访问父元素

Can't access parent elements from iframe

本文关键字:iframe 访问 元素 可以      更新时间:2024-04-09

我不明白。我以为我做了,但现在我做不到了。带有iframe的简单html。独立的iframe是另一个html。当您访问iframe时,我想更改主iframe中的图像。HTML来自主HTML:

主html:

<!DOCTYPE HTML>
 <html lang="en">
    <head></head>
    <body>
        <img id="logo" src="../img/fpdfilms-logo-home.png" />
        <iframe id="fondo" name="main" src="test.html"></iframe>
    </body>
</html>

test.html

<!DOCTYPE HTML>
 <html lang="en">
    <head></head>
    <body>
        <a href="#" onclick="change();">Change Picture</p>
        <script src="../js/jquery-1.11.2.min.js"></script>
        <script type="text/javascript">
            function change()
            {
                var $logo= $('#logo', window.parent.document);
                alert("Does it work?");
                $logo.attr("src","../img/fpdfilms-logo-director.png");
            }
        </script>
    </body>
</html>

它应该在你点击链接时更改图片。但警报没有显示。。。我尝试过不同的方法,但我真的很失落。实现这个简单的改变有多难?

检查您的页面(chrome 40)并获得

SecurityError: Blocked a frame with origin "null" from accessing a frame with origin "null". Protocols, domains, and ports must match.

所以我签了一个服务器(本地快递),运行良好。

您可以引用这个答案,因为它可以满足jquery的需要。

如何使用jquery访问iFrame父页面?

从上面的例子中,使用从父文档中的iframe中选择元素

var $parentElement= $('#parentElement', window.parent.document);