使用JavaScript进行target =“_ top”仿真

时间:2010-03-31 13:10:01

标签: javascript frame frames frameset

假设我们有2帧的帧集,一帧是一个微小的水平头,第二帧是第三方html页面内的“内容”帧。当用户点击“内容”框架内的某些链接时,应使用此链接重新加载整个页面(框架集),如果“内容”框架具有“target = _top”属性,则行为相同。如何使用JS做到这一点?

这里的主要问题是 - 我无法编辑“内容”页面的HTML。

2 个答案:

答案 0 :(得分:0)

尝试将window.location设置为目标网址。

答案 1 :(得分: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>