href在新选项卡或窗口中打开

时间:2015-05-04 21:03:54

标签: javascript jquery html

我有一个包含许多href链接的页面,这些链接在框架内打开内容(页面不重新加载,网址保持不变,只是新内容)。我遇到的问题是,由于它们是“href”,浏览器提供了在右键单击的新选项卡/窗口中打开的选项。但是响应内容并不是设计为自己的页面,因为它应该在当前框架内打开。

当用户想要在新的标签/窗口中打开时,还有一种方法可以首先包含当前的网址,以便href链接在新标签/窗口中正常运行吗?希望我有意义。

我正在探索的一个解决方案是根本不使用hrefs,只使用jQuery来运行GET,这样就没有在新的选项卡/窗口中打开的选项。但这需要对当前代码进行大量更改,所以我现在暂时不做。

2 个答案:

答案 0 :(得分:0)

您可以在页面顶部添加应该位于框架中的javascript,以便在不在框架内时重定向到顶级网址。在这种情况下,您可能希望包含一个参数,以便您知道要在框架中加载哪个页面。 E.g:

if (window.parent == window.top) {
    window.location = "/toplevelurl?framepage=myframepage";
}

答案 1 :(得分:0)

您可以使用jQuery向您的href添加一个事件,该事件将处理您的内容并在div或其他区域中发布html:

<html>
<head>
<meta charset="utf-8">
<title>Load remote content into object element</title>
</head>
<body>
<div id="siteloader"></div>​
<script src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
<script>
  $("#siteloader").html('<object data="http://location-of-stuff/">');
</script>

Took this example from this post