我正在使用 background.ts 上的以下代碼將 Chrome 擴展作為彈出視窗打開:
chrome.windows.create({
url: chrome.runtime.getURL("index.html"),
type: "popup",
width: w,
height: h,
top: top,
left: left,
});
當您在 opensea.io 頁面并嘗試連接您的 Coinbase 錢包時會發生類似的情況,因為您已安裝 Coinbase 擴展

在用戶對彈出視窗(Chrome 擴展程式本身)執行一些操作后,我需要重繪 原始選項卡。我已經嘗試過chrome.tabs.reload(arrayOfTabs[0].id);,但問題是彈出視窗被視為不同的視窗,我無法訪問原始視窗選項卡。
歡迎大家提出意見。謝謝
uj5u.com熱心網友回復:
假設那是打開選項卡,我試圖獲得活動且集中的視窗,但我錯了。
前
chrome.tabs.query({ active: true, lastFocusedWindow: true }, (arrayOfTabs) => {
if (arrayOfTabs.length > 0 && arrayOfTabs[0].id) {
chrome.tabs?.reload(arrayOfTabs[0].id, {});
}
});
后
chrome.tabs.query({ active: true, windowType: "normal" }, (arrayOfTabs) => {
if (arrayOfTabs.length > 0 && arrayOfTabs[0].id) {
chrome.tabs?.reload(arrayOfTabs[0].id, {});
}
});
通過這種方式,我可以獲得開瓶器標簽。正如@wOxxOm 在評論中提到的那樣,無論視窗如何都可以識別選項卡,這完全與我使用的查詢有關。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/483371.html
