aboutsummaryrefslogtreecommitdiff
path: root/files/fr/mozilla/add-ons/webextensions/api/menus/refresh/index.html
blob: f2914a6c0f98f8f2d5b78ec56e329fa4d9de88eb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
---
title: menus.refresh()
slug: Mozilla/Add-ons/WebExtensions/API/menus/refresh
tags:
  - API
  - Add-ons
  - Extensions
  - Method
  - Reference
  - WebExtensions
  - menus
  - refresh
translation_of: Mozilla/Add-ons/WebExtensions/API/menus/refresh
---
<div>{{AddonSidebar()}}</div>

<p>Actualise un menu affiché.</p>

<p>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.</p>

<p>Cela est généralement appelé depuis l'intérieur d'un gestionnaire d'événements {{WebExtAPIRef("menus.onShown")}} après que le gestionnaire a effectué des mises à jour dans le menu.</p>

<p>Firefox rend cette fonction disponible via l'espace de noms <code>contextMenus</code> ainsi que l'espace de noms des <code>menus</code>.</p>

<p>C'est une fonction asynchrone qui renvoie une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code>.</p>

<h2 id="Syntaxe">Syntaxe</h2>

<pre class="syntaxbox brush:js">browser.menus.refresh()
</pre>

<h3 id="Paramètres">Paramètres</h3>

<p>Aucun.</p>

<h3 id="Valeur_retournée">Valeur retournée</h3>

<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui se réalise sans arguments.</p>

<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>

<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p>

<p>{{Compat("webextensions.api.menus.refresh", 10)}}</p>

<h2 id="Exemples">Exemples</h2>

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

<pre class="brush: js line-numbers  language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">updateMenuItem</span><span class="punctuation token">(</span>linkHostname<span class="punctuation token">)</span> <span class="punctuation token">{</span>
  browser<span class="punctuation token">.</span>menus<span class="punctuation token">.</span><span class="function token">update</span><span class="punctuation token">(</span>openLabelledId<span class="punctuation token">,</span> <span class="punctuation token">{</span>
    title<span class="punctuation token">:</span> <span class="template-string token"><span class="string token">`Open (</span><span class="interpolation token"><span class="interpolation-punctuation punctuation token">${</span>linkHostname<span class="interpolation-punctuation punctuation token">}</span></span><span class="string token">)`</span></span>
  <span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
  browser<span class="punctuation token">.</span>menus<span class="punctuation token">.</span><span class="function token">refresh</span><span class="punctuation token">(</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
<span class="punctuation token">}</span>

browser<span class="punctuation token">.</span>menus<span class="punctuation token">.</span>onShown<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span>info <span class="operator token">=</span><span class="operator token">&gt;</span> <span class="punctuation token">{</span>
  <span class="keyword token">if</span> <span class="punctuation token">(</span><span class="operator token">!</span>info<span class="punctuation token">.</span>linkUrl<span class="punctuation token">)</span> <span class="punctuation token">{</span>
    <span class="keyword token">return</span><span class="punctuation token">;</span>
  <span class="punctuation token">}</span>
  <span class="keyword token">let</span> linkElement <span class="operator token">=</span> document<span class="punctuation token">.</span><span class="function token">createElement</span><span class="punctuation token">(</span><span class="string token">"a"</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
  linkElement<span class="punctuation token">.</span>href <span class="operator token">=</span> info<span class="punctuation token">.</span>linkUrl<span class="punctuation token">;</span>
  <span class="function token">updateMenuItem</span><span class="punctuation token">(</span>linkElement<span class="punctuation token">.</span>hostname<span class="punctuation token">)</span><span class="punctuation token">;</span>
<span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>

<p>{{WebExtExamples}}</p>