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