为什么 `chrome.tabs.create` 创建一个选项卡并使其处于活动状态,即使在移动 Chromium 浏览器上传递 active: false ?

问题描述 投票:0回答:1

我正在开发 MV3 Chromium 扩展。在扩展中,我需要创建一个新选项卡(使用

chrome.tabs.create
来完成此操作)并将用户导航到特定站点。我希望新选项卡在后台打开,以便当前活动的选项卡不会更改。

在桌面版 Chrome 浏览器上,此功能运行良好。然而,在支持扩展的基于 Chromium 的移动浏览器(例如 Kiwi 浏览器)上,本应在后台打开的选项卡会窃取焦点并移至前台。

如何克服这个问题?

chrome.tabs.create({ url, active: false, pinned: false, selected: false });

javascript google-chrome chromium
1个回答
0
投票

您可以使用 chrome.tabs.update

切换回原始选项卡
// Save the current tab ID for later use
const [currentTab] = await chrome.tabs.query({ active: true, lastFocusedWindow: true })

// Your actions to open a new tab
chrome.tabs.create({ url, active: false, pinned: false, selected: false })
...

// Switch back to the original tab
await chrome.tabs.update(currentTab.id, {active: true})
© www.soinside.com 2019 - 2024. All rights reserved.