jquery通过iframe访问top文档

时间:2012-12-16 15:38:49

标签: jquery iframe parent document

我早些时候已经开始工作了,但由于某种原因,它不再有效。有人可以解释一下为什么现在不行吗?

包含iframe的第一页:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
    <head>
        <title>Test 1</title>
        <script src="http://code.jquery.com/jquery-latest.js"></script>
    </head>
    <body>
        <div id="thediv" style="background: #ffff00;"> div </div>
        <iframe id="theframe" src="test2.html"></iframe>
    </body>
</html>

iframe内容

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
    <head>
        <title>test 2</title>
        <script src="http://code.jquery.com/jquery-latest.js"></script>
        <script>
           $(document).ready(function () {
               $("#clickme").click(function(){
                   $("#thediv", top.document).css("background","#ff0000");
                   alert($("#thediv", top.document).text());
               });
           });
        </script>
    </head>
    <body>
        <a href="#" id="clickme">clickme</a>
    </body>
</html>

2 个答案:

答案 0 :(得分:0)

这在Firefox 9中运行良好。

请记住.click()不适用于动态添加的元素。

更新:由于安全原因,不允许这样做。请参阅此主题:Unsafe JavaScript attempt to access frame with URL

答案 1 :(得分:0)

好吧我无法在我的本地机器上工作但是在我的实时文件中我在iframe src路径中使用了一个完整的URL,即使它在同一个域中它也不起作用...删除后它似乎工作的网址路径......无论如何,谢谢