We're looking for a user researcher to understand the needs of developers and designers. Is this you or someone you know? Check out the post: https://mzl.la/2IGzdXS

Перейти к:

Перевод не завершен. Пожалуйста, помогите перевести эту статью с английского.

WebExtension JavaScript API может быть использован в фоновых скриптах дополнения и в любом действии браузера или всплывающем окне действия на странице, которые определены в дополнении. Несколько из этих API могут быть доступны в скриптах содержимого (см. список в руководстве по скриптаи содержимого).

Для использования большей силы API вам нужно запросить разрешения в manifest.json вашего дополнения.

Вы можете получить доступ к API используя пространство имён browser:

function logTabs(tabs) {
  console.log(tabs);
}

browser.tabs.query({currentWindow: true}, logTabs);

Многие API асинхронны, возвращают Promise:

function logCookie(c) {
  console.log(c);
}

function logError(e) {
  console.error(e);
}

var setCookie = browser.cookies.set(
  {url: "https://developer.mozilla.org/"}
);
setCookie.then(logCookie, logError);
Помните, что это отличается от системы дополнений Chrome, которая использует пространство имён chrome в отличии от browser, и которая использует обратный вызов вместо promises для асинхронных функций.

Для поддержки портирования, Firefox WebExtensions API реализация поддерживает chrome и функции обратного вызова, а также  browser и promises.

В Мозиле также есть polyfill, который позволяет коду, использующему browser и promises работать не изменёнными в Chrome: https://github.com/mozilla/webextension-polyfill.

Не все браузеры поддерживают все API: детали см. Browser support for JavaScript APIs.

cookies

Enables WebExtensions to get and set cookies, and be notified when they change.

API reference documentation

tabs

Interact with the browser's tab system. You can use this API to get a list of opened tabs and to create, modify, and rearrange tabs in the browser.

API reference documentation

windows

Взаимодействие с окнами браузера. Вы можете использовать этот API, чтобы получить информацию об открытых окнах, а также открывать, изменять и закрывать окна. Вы также можете слушать события открытия, закрытия окна, и активировать события.

API reference documentation

Метки документа и участники

Метки: 
Внесли вклад в эту страницу: VitalyTartynov, Kloshar, pk.prog, wbamberg
Обновлялась последний раз: VitalyTartynov,