防止在新标签/窗口中打开

时间:2011-06-01 21:24:28

标签: html css iframe tabs hyperlink

我有一个网站,其中一个角落里有一个音乐播放器。因为每次用户更改网站的一部分时我都不希望音乐停止,所以我使用了iFrame作为内容。因此,当有人点击菜单按钮时,所有更改都是iFrame的来源。

现在唯一的问题是,如果有人试图在新标签/窗口中打开其中一个子页面。他们得到的只是白色背景上的黑色文字,内容应该在iFrame中。

有没有办法阻止这种情况?

哦,如果有帮助的话,那么这个页面就是www.sinjabe.com

由于

3 个答案:

答案 0 :(得分:0)

最合乎逻辑的解决方案(对我来说......)就是将音乐播放器从页面中分离出来;让音乐播放器在不同的窗口/标签中打开。当您网站的访问者请求/点击它时,您可以在弹出窗口中显示音乐播放器。

如果有人在新的标签/窗口中打开页面,其他解决方案(例如检测内容是否具有父框架)将导致多个音乐播放器。

答案 1 :(得分:0)

您可以更改子页面以检测它们是否在iframe中加载:

(window.location != window.parent.location) ? true : false;

然后根据需要加载或重定向到完整模板。

答案 2 :(得分:0)

将其放在子页面上:

<script type="text/javascript">
    if (window.location == window.parent.location)
    this.window.location = 'main_site.html';
</script>

- 为这一个@George Cummins写这么短的条件声明给予赞扬:)

这会将子页面上的任何直接输入流量重定向到您的主页面。我必须警告你,用于显示此类内容的iframe高度SEO效率不高,并且URL在历史映射(后退按钮无效)和链接共享方面无用,因为当您单击菜单按钮时主URL不会更改