user_scripts
| Тип | Object |
|---|---|
| Обязательный | Нет |
| Версия манифеста | 2 |
| Пример | "user_scripts": { "api_script": "apiscript.js", } |
Инструктирует браузер загрузить скрипт, упакованный в расширение, известный как скрипт API. Этот скрипт используется для экспорта набора пользовательских методов API для использования в пользовательских скриптах. Путь к скрипту API, относительно файла manifest.json, определяется как string в "api_script".
Примечание: Ключ user_script необходим для работы API userScripts, даже если скрипт API не указан. Например, user_scripts: {}.
Скрипт API:
- выполняется в процессах контента.
- имеет доступ к глобальным переменным window и document, относящимся к веб-странице, к которой он прикреплён.
- имеет доступ к тому же подмножеству API WebExtension, обычно доступному в скрипте контента.
Скрипт выполняется автоматически на любой веб-странице, определённой в matches с помощью userScripts.register. Однако это происходит до создания объекта песочницы пользовательского скрипта и экспорта пользовательских методов API.
Для экспорта пользовательских методов API скрипт прослушивает userScripts.onBeforeScript и затем экспортирует эти методы.
Не каждый пользовательский скрипт может нуждаться во всех пользовательских методах API. Поэтому вы можете включить подробности необходимых API в scriptMetadata при запуске userScripts.register. Скрипт API затем получает доступ к scriptMetadata через параметр script, полученный слушателем userScripts.onBeforeScript (как script.metadata).
Совместимость с браузерами
| Рабочий стол | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari на IOS | Samsung Internet | |
user_scripts |
Да | 79 | 68 | ? | Нет | Нет | ? | ? | 68 | ? | Нет | ? |
api_script |
Да | 79 | 68 | ? | Нет | Нет | ? | ? | 68 | ? | Нет | ? |
См. также
© 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/manifest.json/user_scripts