如何根据用户是否选择在新选项卡中打开来打开其他页面

时间:2010-06-05 23:26:08

标签: html

我正在将页面上的链接打开到IFrame中。但是,如果用户右键单击并在新窗口中选择打开将破坏我想要的外观,因为它不会有父页面保留它。那么有没有办法打开页面,因为当用户点击链接时我现在正在工作,但如果他们选择在新标签页中打开,让它在新窗口中重新加载当前页面,并选择他们选择的链接加载到IFrame中。

三江源

2 个答案:

答案 0 :(得分:0)

您可以更改所有链接以使用javascript而不是直接HREF。这意味着用户实际上无法“在新标签页中打开”,但必须像平常一样点击它们。使用'空'href&一个onclick事件,用于设置iframe的location属性。

<a href="javascript:void(0);" onclick="document.frames[name_of_frame].location = 'some/url.html';">Link</a>

应该工作

答案 1 :(得分:0)

尝试将以下代码放入您尝试在框架集中打开的页面中:

if (top.location.href == self.location.href) {
    top.location.href = '/path/to/frameset/page.aspx?somethingindicatingwhichpagetoloadiniframe';
}

这将确定父框架是否存在,如果不存在,则重定向到框架集页面,您应该在iframe中预加载原始页面。