现在我有一个链接打开URL现有尽可能
<a href="blabla" target="_blank">link</a>
然而,这总是打开一个新的标签。我想下面的效果
- 如果用户已经有相同的URL选项卡,再利用该选项卡,并刷新如果可能的话
- 否则,打开一个新标签
我如何能实现这使用JavaScript?
如果只有一些特定于浏览器的方法,那么没有相应支持的浏览器的用户将会“后备”到始终新标签的方式。
现在我有一个链接打开URL现有尽可能
<a href="blabla" target="_blank">link</a>
然而,这总是打开一个新的标签。我想下面的效果
我如何能实现这使用JavaScript?
如果只有一些特定于浏览器的方法,那么没有相应支持的浏览器的用户将会“后备”到始终新标签的方式。
您可以设置特定窗口的名称,以便打开重用选项卡。问题是,只要href将相同,它将不会被重新加载。所以你不能轻易获得refresh
部分。
所以,举例来说,你可以有:
<a href="blabla" target="blabla">link</a>
<a href="foo" target="bar">link</a>
在JS,你其实可以得到相同的,使用window.open
。你也可以使用URL作为target
,让您无需手动指定:
<a href="blabla" onclick="window.open(this.href, this.href); return false">link</a>
<a href="foo" onclick="window.open(this.href, this.href); return false">link</a>
你也可以概括,并添加点击监听到文档中,为了打开这样一些链接。喜欢的东西:
<div id="container">
<a href="blabla">link</a>
<a href="foo">link</a>
</div>
<script>
document.getElementById("container").onclick = function(evt){
if (evt.target.tagName === "A")
window.open(evt.target.href, evt.target.href);
return false;
}
</script>
如果页面是在同一个域,在这一点上,你也许可以试着做网页的经验刷新为好。
我还没有足够的评论,所以请不要选择这个作为答案,但我相信你会在这里找到一个近乎重复的问题:http://stackoverflow.com/questions/2641812 /如何检测该相同页面是否已在另一个窗口中打开即好运! –