1

这是我的主要内容index.html

<frameset cols="200,*" border="0" frameborder="0" framespacing="0">
    <frame name="nav" id="nav" src="nav.html" />
    <frame name="content" id="content" src="1.html" />
</frameset>

这是nav.html

<body>
    <ul>
        <li><a href="1.html" target="content" id="test">1</a></li>
        <li><a href="2.html" target="content">2</a></li>
    </ul>
</body>

这是1.html

<body>    
<script type="text/javascript">
    $("#content").ready(function() {
         $("#nav").contents().find('#test').html('selected');
    } );
</script>
</body>

我想要什么:当右框架(1.html)加载时,它会改变左框架(nav.html)中的某些内容。

该语法似乎在第二行中不起作用,($("#nav").contents()...)因为当我使用它进行测试时"#contents"它也不起作用,但是当我将其更改为"this".

4

1 回答 1

1

我相信您需要访问 javascript 对象window.parent.frames[0].document[1]访问您的框架。

在 jquery 中,您可以将其作为第二个参数,这样:

$("#nav", window.parent.frames[0].document).find("#test").html("selected");

那是且仅当您访问window同一域上的对象时。

于 2013-05-02T20:42:24.753 回答