menus.refresh()

Actualise un menu affiché.

Met à jour les éléments de menu de l'extension dans le menu affiché par le navigateur, y compris les modifications effectuées depuis l'affichage du menu. N'a aucun effet si le menu n'est pas affiché. La reconstruction d'un menu affiché est une opération coûteuse. N'utilisez cette méthode que lorsque cela est nécessaire.

Cela est généralement appelé depuis l'intérieur d'un gestionnaire d'événements menus.onShown après que le gestionnaire a effectué des mises à jour dans le menu.

Firefox rend cette fonction disponible via l'espace de noms contextMenus ainsi que l'espace de noms des menus.

C'est une fonction asynchrone qui renvoie une Promise.

Syntaxe

js
browser.menus.refresh();

Paramètres

Aucun.

Valeur retournée

Une Promise qui se réalise sans arguments.

Compatibilité des navigateurs

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Firefox for Android
Safari on iOS
refresh

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support
Uses a non-standard name.
Has more compatibility info.

Exemples

Cet exemple permet d'afficher le menu contextuel sur un lien, puis met à jour l'élément de menu openLabelledId menu item avec le nom d'hôte du lien :

js
function updateMenuItem(linkHostname) {
  browser.menus.update(openLabelledId, {
    title: `Open (${linkHostname})`,
  });
  browser.menus.refresh();
}

browser.menus.onShown.addListener((info) => {
  if (!info.linkUrl) {
    return;
  }
  let linkElement = document.createElement("a");
  linkElement.href = info.linkUrl;
  updateMenuItem(linkElement.hostname);
});

Example extensions