HTML:框架集在新窗口或Tab中打开

时间:2013-08-25 11:27:37

标签: html frameset

我在FRAMESET中使用时遇到问题。

情境:

我正在使用frameset。我的菜单中有5个链接,当我单击主页时它可以,但是当我在新标签或新窗口中打开它时,设计不包括在内。

有没有办法捆绑设计,用户可以使用新窗口或新标签打开它?

这是我的frameset代码:

<frameset rows="120,*,30" border ="0">
<frame name ="top" src="header.php">

</frame>

<frameset cols="200,*" border ="0">
<frame src="menu.php" name="menu">
<frame src="index.php" name="main" scrolling="yes">
</frame>
</frameset>

<frame name="bottom" src="footer.php">

</frameset>

这是我的菜单代码:

<body bgcolor = "#585858">
    <b>User Menu :</b>
    <ul>
    <li><a href="index.php" target="main">Home</a></li>
    <li><a href="main.php" target="main">Playlist</a></li>
    <li><a href="view_weeks.php" target="main">View Weeks</a></li>
    <li><a href="view_network.php" target="main">Network</a></li>
    <li><a href="view_netbldg.php" target="main">Station & Building</a></li>
    </ul>
</body>

我已经尝试了_top,_self,_parent,_blank但不是我正在看的其中一个。

预先感谢你。

1 个答案:

答案 0 :(得分:0)

这是设计的。

如果你想解决它并强制框架集出现在新窗口中,那么我认为唯一可行的选择是在框架集的每个子页面上进行javascript检查,如果没有,重定向回到框架集页面。

var isFramesetAvailable = (window.top !== window.self);
if (!isFramesetAvailable) {
  window.location.href = 'your_frameset_page.html#target_page';
}

然后你的frameset页面将检查#target_page url片段,如果它存在,则加载该帧。