JavaScript 跳转到指定标签页(不重复打开)

JavaScript About 479 words

需求

当从网页中跳转到另一个新网页时,已经打开过一次,如果再次点击不再新开标签页,直接回到已打开的标签页。

否则会出现很多标签页。

代码

使用window.open打开标签页,第二个参数是指定跳转过去时目前网页的window.name

window.open("http://a.com", "mySingletonTab")

命名窗口 named browsing context

浏览器内部逻辑:查找当前browsing context group中是否存在window.name === "mySingletonTab"

如果存在则复用那个tab,如果不存在则创建新tab并设置name

注意

a标签默认的relnoopener,即:设置了target为命名窗口,也不会有opener,所以会每次都打开新的窗口。

所以需要设置rel='opener'

由此可知:window.open默认的规则是携带了opener属性的。

<a href="xxx" target="mySingletonTab" rel='opener' >跳转</a>
Views: 20 · Posted: 2026-05-29

———         Thanks for Reading         ———

Give me a Star, Thanks:)

https://github.com/fendoudebb/LiteNote

扫描下方二维码关注公众号和小程序↓↓↓

扫描下方二维码关注公众号和小程序↓↓↓
Prev Post
Today In History
Browsing Refresh