menus.refresh()
Обновляет отображаемое меню.
Обновляет пункты меню расширения в текущем отображаемом меню браузера, включая изменения, внесённые с момента отображения меню. Не имеет эффекта, если меню не отображается. Перестроение отображаемого меню — ресурсоёмкая операция, вызывайте этот метод только по необходимости.
Обычно этот метод вызывается из обработчика события menus.onShown после внесения любых обновлений в меню.
Функция доступна в Firefox через пространство имён contextMenus а также menus пространство имён.
Это асинхронная функция, которая возвращает Promise.
Синтаксис
browser.menus.refresh()
Параметры
Нет.
Возвращаемое значение
A Promise, который выполняется без аргументов.
Совместимость с браузерами
| Рабочий стол | Мобильный | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari на IOS | Samsung Internet | |
refresh |
Нет | Нет | 6060 | ? | Нет | Нет | ? | ? | Нет | ? | Нет | ? |
Примеры
В этом примере прослушивается событие отображения контекстного меню над ссылкой, а затем обновляется пункт меню openLabelledId с хост-именем ссылки:
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); });
Примеры расширений
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/menus/refresh