1

2フレームのフレームセットがあるとします。1つのフレームは小さな水平ヘッダーのようなもので、2つ目はサードパーティのhtmlページを内部に持つ一種の「コンテンツ」フレームです。ユーザーが「content」フレーム内のリンクをクリックすると、ページ全体(フレームセット)がこのリンクで再ロードされます。「content」フレームに「target=_top」属性がある場合と同じ動作です。JSを使用してこれを行う方法は?

ここでの主な問題は、「コンテンツ」ページのhtmlを編集できないことです。

4

2 に答える 2

0

window.location対象のURLに設定してみてください。

于 2010-03-31T13:18:07.210 に答える
0

これが私の簡単な解決策です:

<html>
<head>
<script type="text/javascript">
    function load(){
        // set target="_top" to reload whole frame
        var links = this.content.document.getElementsByTagName("a");
        for(var i = 0; i < links.length; i++){
            var link = links[i];
            link.target="_top";
        }
    }
</script>
</head>

<frameset rows="50,*" frameborder="0" onload="load()">
   <frame src="/header.html" scrolling="no">
   <frame src="/content.html" name="content">
</frameset> 

</html>
于 2010-03-31T13:41:49.967 に答える