یک منوی زمینه بسازید، یک منوی زمینه بسازید

یک منوی زمینه برای کلیک جایگزین (که اغلب کلیک راست نامیده می شود) ماوس ظاهر می شود. برای ایجاد یک منوی زمینه، ابتدا مجوز "contextMenus" را به فایل manifest.json اضافه کنید.

manifest.json:

  "permissions": [
    "contextMenus"
  ],

اگر می‌خواهید نمادی را در کنار آیتم‌های منو نشان دهید، در صورت تمایل، از کلید "icons" استفاده کنید. در این مثال، آیتم منو برای افزونه «جستجوی جهانی گوگل» از یک نماد 16 در 16 استفاده می کند.

یک مورد منوی زمینه با نماد 16 در 16.
یک مورد منوی زمینه با نماد 16 در 16.

بقیه این مثال از نمونه منوی زمینه جستجوی جهانی Google گرفته شده است که چندین گزینه منوی زمینه را ارائه می دهد. هنگامی که یک برنامه افزودنی حاوی بیش از یک منوی زمینه باشد، Chrome به طور خودکار آنها را در یک منوی والد جمع می‌کند، همانطور که در اینجا نشان داده شده است:

یک منوی زمینه تو در تو.
شکل 4 : یک منوی زمینه و یک منوی فرعی تو در تو.

نمونه این را با فراخوانی contextMenus.create() در کارمند سرویس توسعه نشان می‌دهد. آیتم های زیر منو از فایل locales.js وارد می شوند. سپس runtime.onInstalled روی آنها تکرار می شود.

service-worker.js:

const tldLocales = {
  'com.au': 'Australia',
  'com.br': 'Brazil',
  ...
}

chrome.runtime.onInstalled.addListener(async () => {
  for (let [tld, locale] of Object.entries(tldLocales)) {
    chrome.contextMenus.create({
      id: tld,
      title: locale,
      type: 'normal',
      contexts: ['selection'],
    });
  }
});