jQuery通过iframe访问顶部文档



我之前已经让它工作了,但由于某种原因它不再工作了。有人可以解释一下为什么现在不起作用吗?

包含 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>

这在 Firefox 9 中运行良好。

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

更新:出于安全原因,不允许这样做。请参阅此线程: 不安全的 JavaScript 尝试使用 URL 访问框架

好的,

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

最新更新