From 49f6f9b1c078a7a00017cbdeb1659f65687181c5 Mon Sep 17 00:00:00 2001 From: Hoarfroster Date: Mon, 16 Dec 2024 10:38:45 +0800 Subject: [PATCH] zh-CN: create `sidebarAction.getPanel()` (#24898) Co-authored-by: A1lo --- .../api/sidebaraction/getpanel/index.md | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 files/zh-cn/mozilla/add-ons/webextensions/api/sidebaraction/getpanel/index.md diff --git a/files/zh-cn/mozilla/add-ons/webextensions/api/sidebaraction/getpanel/index.md b/files/zh-cn/mozilla/add-ons/webextensions/api/sidebaraction/getpanel/index.md new file mode 100644 index 00000000000000..3049cb617a6697 --- /dev/null +++ b/files/zh-cn/mozilla/add-ons/webextensions/api/sidebaraction/getpanel/index.md @@ -0,0 +1,96 @@ +--- +title: sidebarAction.getPanel() +slug: Mozilla/Add-ons/WebExtensions/API/sidebarAction/getPanel +l10n: + sourceCommit: b8a0743ca8b1e1b1b1a95cc93a4413c020f11262 +--- + +{{AddonSidebar}} + +获取定义侧边栏内容的 HTML 文档的 URL。 + +这是一个返回 [`Promise`](/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Promise) 的异步函数。 + +## 语法 + +```js-nolint +let gettingPanel = browser.sidebarAction.getPanel( + details // 对象 +) +``` + +### 参数 + +- `details` + + - : `object`。包含下列属性的对象: + + - `tabId` {{optional_inline}} + - : `integer`。获取特定于给定标签页的侧边栏的面板。 + - `windowId` {{optional_inline}} + - : `integer`。获取特定于给定窗口的侧边栏的面板。 + + + +- 如果同时提供了 `windowId` 和 `tabId`,函数将失败且返回的 promise 将被拒绝。 +- 如果同时省略 `windowId` 和 `tabId`,则返回全局面板。 + +### 返回值 + +[`Promise`](/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Promise),将用包含侧边栏面板的文档的 URL 来兑现。这将是一个完全限定 URL,例如: + +```url +moz-extension://d1d8a2eb-fe60-f646-af30-a866c5b39942/sidebar.html +``` + +## 浏览器兼容性 + +{{Compat}} + +## 示例 + +获取面板的 URL: + +```js +function onGot(sidebarUrl) { + console.log(sidebarUrl); +} + +let gettingPanel = browser.sidebarAction.getPanel({}); +gettingPanel.then(onGot); +``` + +{{WebExtExamples}} + +> [!NOTE] +> 此 API 基于 Opera 的 [`chrome.sidebarAction`](https://help.opera.com/en/extensions/sidebar-action-api/) API。 + +