browserAction.setPopup()
Définit le document HTML qui sera ouvert en tant que popup lorsque l'utilisateur clique sur l'icône de l'action du navigateur. Les onglets sans popup spécifique hériteront de la popup globale, qui par défaut est la default_popup
spécifiée dans le manifest.
Syntaxe
browser.browserAction.setPopup(
details, // object
);
Paramètres
details
-
object
.tabId
Facultatif-
integer
. Définit la fenêtre contextuelle uniquement pour un onglet spécifique. La fenêtre contextuelle est réinitialisée lorsque l'utilisateur navigue dans cet onglet vers une nouvelle page. windowId
Facultatif-
integer
. Définit le popup uniquement pour la fenêtre spécifiée. popup
-
string
ounull
. Le fichier HTML à afficher dans un popup, spécifié comme URL.Ceci peut pointer vers un fichier empaqueté dans l'extension (par exemple, créé à l'aide de
extension.getURL
), ou un document distant (par exemplehttps://example.org/
).Si une chaîne vide (
""
) est passée ici, le popup est désactivé, et l'extension recevra les événementsbrowserAction.onClicked
.Si le
popup
estnull
:Si
tabId
est spécifié, supprime la fenêtre popup spécifique à l'onglet afin que l'onglet hérite de la fenêtre popup globale..Si
windowId
est spécifié, supprime le popup spécifique à la fenêtre afin que la fenêtre hérite du popup global.Sinon, la fenêtre contextuelle globale revient à la valeur par défaut.
- Si
windowId
ettabId
sont tous les deux fournis, la fonction échoue et le popup n'est pas défini. - Si
windowId
ettabId
sont tous les deux omis, la fenêtre contextuelle globale est définie.
Exemples
Ce code ajoute une paire d'éléments de menu contextuel que vous pouvez utiliser pour basculer entre deux fenêtres contextuelles. Notez que vous aurez besoin de la permission "contextMenus" définie dans le manifest de l'extension pour créer des éléments du menu contextuel.
function onCreated() {
if (browser.runtime.lastError) {
console.log("error creating item:" + browser.runtime.lastError);
} else {
console.log("item created successfully");
}
}
browser.contextMenus.create(
{
id: "popup-1",
type: "radio",
title: "Popup 1",
contexts: ["all"],
checked: true,
},
onCreated,
);
browser.contextMenus.create(
{
id: "popup-2",
type: "radio",
title: "Popup 2",
contexts: ["all"],
checked: false,
},
onCreated,
);
browser.contextMenus.onClicked.addListener(function (info, tab) {
if (info.menuItemId == "popup-1") {
browser.browserAction.setPopup({ popup: "/popup/popup1.html" });
} else if (info.menuItemId == "popup-2") {
browser.browserAction.setPopup({ popup: "/popup/popup2.html" });
}
});
Compatibilité des navigateurs
BCD tables only load in the browser
Note :
Cette API est basée sur l'API Chromium chrome.browserAction
. Cette documentation est dérivée de browser_action.json
dans le code de Chromium code.
Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.