browser.extensionTypes

Описание

chrome.extensionTypes API содержит объявления типов для расширений Chrome.

Типы

ColorArray

Chrome 139 и более поздние версии browser.* начиная с Chrome 148

Тип

[число, число, число, число]

CSSOrigin

Chrome 66 и более поздних версий browser.* начиная с Chrome 148

Источник внедренного CSS.

Перечисление

"author"

"user"

DeleteInjectionDetails

Chrome 87 и более поздних версий browser.* начиная с Chrome 148

Сведения о ССЦ, который нужно удалить. Необходимо указать либо код, либо свойство файла, но не оба одновременно.

Свойства

  • allFrames

    Логическое значение (необязательно)

    Если для allFrames задано значение true, CSS удаляется из всех фреймов текущей страницы. По умолчанию это false. Удаляется только из верхнего фрейма. Если заданы true и frameId, код удаляется из выбранного фрейма и всех его дочерних фреймов.

  • код

    Строка (необязательно)

    CSS-код, который нужно удалить.

  • cssOrigin

    CSSOrigin необязательный

    Источник CSS, который нужно удалить. Значение по умолчанию – "author".

  • файл

    Строка (необязательно)

    CSS-файл, который нужно удалить.

  • frameId

    number (необязательно)

    Фрейм, из которого нужно удалить CSS. По умолчанию используется значение 0 (фрейм верхнего уровня).

  • matchAboutBlank

    Логическое значение (необязательно)

    Если matchAboutBlank имеет значение true, то код также удаляется из фреймов about:blank и about:srcdoc, если у вашего расширения есть доступ к его родительскому документу. По умолчанию это false.

DocumentLifecycle

Chrome 106 и более поздних версий browser.* начиная с Chrome 148

Жизненный цикл документа фрейма.

Перечисление

"prerender"

"active"

"cached"

"pending_deletion"

ExecutionWorld

Chrome 111+ browser.* начиная с Chrome 148

Среда JavaScript, в которой будет выполняться скрипт. Это может быть изолированная среда, уникальная для этого расширения, основная среда DOM, которая используется совместно с JavaScript страницы, или среда пользовательских скриптов, доступная только для скриптов, зарегистрированных с помощью User Scripts API.

Перечисление

"ISOLATED"

"MAIN"

"USER_SCRIPT"

FrameType

Chrome 106 и более поздних версий browser.* начиная с Chrome 148

Тип фрейма.

Перечисление

"outermost_frame"

"fenced_frame"

"sub_frame"

ImageDataType

Chrome 139 и более поздние версии browser.* начиная с Chrome 148

Данные пикселей для изображения. Должен быть объектом ImageData, например из элемента canvas.

Тип

ImageData

ImageDetails

Сведения о формате, качестве и области изображения.

Свойства

  • format

    ImageFormat необязательный

    Формат итогового изображения. Значение по умолчанию: "jpeg".

  • качество

    number (необязательно)

    Если выбран формат "jpeg", этот параметр определяет качество итогового изображения. Для изображений PNG это значение игнорируется. Чем ниже качество, тем больше визуальных артефактов будет на изображении и тем меньше байтов потребуется для его хранения.

ImageFormat

Chrome 44+ browser.* начиная с Chrome 148

Формат изображения.

Перечисление

"jpeg"

"png"

InjectDetails

Сведения о скрипте или CSS, которые нужно внедрить. Необходимо указать либо код, либо свойство файла, но не оба одновременно.

Свойства

  • allFrames

    Логическое значение (необязательно)

    Если allFrames имеет значение true, это означает, что JavaScript или CSS должны быть внедрены во все фреймы текущей страницы. По умолчанию это false, и он вставляется только в верхний фрейм. Если заданы true и frameId, код вставляется в выбранный фрейм и все его дочерние фреймы.

  • код

    Строка (необязательно)

    Код JavaScript или CSS для вставки.

    Предупреждение. Будьте осторожны при использовании параметра code. Неправильное использование может сделать расширение уязвимым для межсайтового скриптинга.

  • cssOrigin

    CSSOrigin необязательный

    Chrome 66 и более поздних версий browser.* начиная с Chrome 148

    Источник внедряемого CSS. Это можно указать только для CSS, но не для JavaScript. Значение по умолчанию – "author".

  • файл

    Строка (необязательно)

    Файл JavaScript или CSS для внедрения.

  • frameId

    number (необязательно)

    Chrome 50 и более поздних версий browser.* начиная с Chrome 148

    Фрейм, в который нужно вставить скрипт или CSS. По умолчанию используется значение 0 (фрейм верхнего уровня).

  • matchAboutBlank

    Логическое значение (необязательно)

    Если matchAboutBlank имеет значение true, то код также внедряется во фреймы about:blank и about:srcdoc, если у вашего расширения есть доступ к родительскому документу. Код нельзя вставлять в фреймы about: верхнего уровня. По умолчанию это false.

  • runAt

    RunAt необязательный

    Самый ранний момент, когда JavaScript или CSS будут внедрены на вкладку. Значение по умолчанию – document_idle.

RunAt

Chrome 44+ browser.* начиная с Chrome 148

Самый ранний момент, когда JavaScript или CSS будут внедрены на вкладку.

Перечисление

"document_start"
Скрипт внедряется после всех файлов CSS, но до создания других DOM и запуска других скриптов.

"document_end"
Скрипт внедряется сразу после завершения DOM, но до загрузки дополнительных ресурсов, таких как изображения и фреймы.

"document_idle"
Браузер выбирает время для внедрения скрипта между "document_end" и сразу после запуска события window.onload. Точный момент вставки зависит от сложности документа и времени его загрузки. Он оптимизируется для повышения скорости загрузки страницы. Скриптам, которые выполняются при значении document_idle, не нужно отслеживать событие window.onload, так как они гарантированно запускаются после завершения DOM. Если скрипт должен выполняться после window.onload, расширение может проверить, было ли уже запущено событие onload, с помощью свойства document.readyState.