browser.extensionTypes

說明

chrome.extensionTypes API 包含 Chrome 擴充功能的類型宣告。

類型

ColorArray

Chrome 139 以上版本 Chrome 148 起為 browser.*

類型

[number, number, number, number]

CSSOrigin

Chrome 66 以上版本 瀏覽器 (自 Chrome 148 起)

插入 CSS 的來源。

列舉

"author"

"user"

DeleteInjectionDetails

Chrome 87 以上版本 Chrome 148 起為 browser.*

要移除的 CSS 詳細資料。必須設定程式碼或檔案屬性,但不得同時設定兩者。

屬性

  • allFrames

    布林值 選填

    如果 allFrames 為 true,表示應從目前頁面的所有頁框中移除 CSS。預設值為 false,且只會從頂層頁框中移除。如果設定 true 和 frameId,系統會從所選頁框及其所有子頁框中移除程式碼。

  • 程式碼

    字串 選填

    要移除的 CSS 程式碼。

  • cssOrigin

    CSSOrigin 選填

    要移除的 CSS 來源。預設為 "author"。

  • 檔案

    字串 選填

    要移除的 CSS 檔案。

  • frameId

    數字 選填

    要移除 CSS 的頁框。預設值為 0 (頂層頁框)。

  • matchAboutBlank

    布林值 選填

    如果 matchAboutBlank 為 true,且擴充功能可存取父項文件,則程式碼也會從 about:blank 和 about:srcdoc 框架中移除。預設值為 false。

DocumentLifecycle

Chrome 106 以上版本 Chrome 148 起為 browser.*

頁框的文件生命週期。

列舉

"prerender"

"active"

"cached"

"pending_deletion"

ExecutionWorld

Chrome 111 以上版本 Chrome 148 起為 browser.*

指令碼執行的 JavaScript 環境。可以是這個擴充功能專屬的獨立環境、與網頁 JavaScript 共用的 DOM 主要環境,或是僅適用於透過 User Scripts API 註冊的指令碼的使用者指令碼環境。

列舉

"ISOLATED"

"MAIN"

"USER_SCRIPT"

FrameType

Chrome 106 以上版本 Chrome 148 起為 browser.*

影格類型。

列舉

"outermost_frame"

"fenced_frame"

"sub_frame"

ImageDataType

Chrome 139 以上版本 Chrome 148 起為 browser.*

圖片的像素資料。必須是 ImageData 物件,例如來自 canvas 元素。

類型

ImageData

ImageDetails

圖片格式、品質和區域的詳細資料。

屬性

  • format

    ImageFormat 選填

    生成圖片的格式。預設值為 "jpeg"。

  • quality

    數字 選填

    格式為 "jpeg" 時,控制生成圖片的品質。PNG 圖片會忽略這個值。隨著品質降低,產生的圖片會出現更多視覺不自然感,儲存所需的位元組數也會減少。

ImageFormat

Chrome 44 以上版本 瀏覽器。*自 Chrome 148 起

圖片格式。

列舉

"jpeg"

"png"

InjectDetails

要插入的指令碼或 CSS 詳細資料。必須設定程式碼或檔案屬性,但不得同時設定兩者。

屬性

  • allFrames

    布林值 選填

    如果 allFrames 為 true,表示 JavaScript 或 CSS 應插入目前網頁的所有頁框。預設值為 false,且只會插入頂層框架。如果設定 true 和 frameId,系統會在所選頁框及其所有子頁框中插入程式碼。

  • 程式碼

    字串 選填

    要插入的 JavaScript 或 CSS 程式碼。

    警告:使用 code 參數時請務必小心。如果使用不當,擴充功能可能會遭受跨網站指令碼攻擊

  • cssOrigin

    CSSOrigin 選填

    Chrome 66 以上版本 瀏覽器 (自 Chrome 148 起)

    要插入的 CSS 來源。這項設定只能用於 CSS,不適用於 JavaScript。預設為 "author"。

  • 檔案

    字串 選填

    要插入的 JavaScript 或 CSS 檔案。

  • frameId

    數字 選填

    Chrome 50 以上版本 Chrome 148 以上版本的 browser.*

    應插入指令碼或 CSS 的頁框。預設值為 0 (頂層頁框)。

  • matchAboutBlank

    布林值 選填

    如果 matchAboutBlank 為 true,且擴充功能可存取父項文件,則程式碼也會插入 about:blank 和 about:srcdoc 框架。無法在頂層 about:-frames 中插入程式碼。預設為 false。

  • runAt

    RunAt 選填

    JavaScript 或 CSS 插入分頁的最早時間。預設為「document_idle」。

RunAt

Chrome 44 以上版本 瀏覽器。*自 Chrome 148 起

JavaScript 或 CSS 插入分頁的最早時間。

列舉

"document_start"
指令碼會在 CSS 檔案之後插入,但在建構任何其他 DOM 或執行任何其他指令碼之前。

"document_end"
指令碼會在 DOM 完成後立即插入,但會在圖片和框架等子資源載入前插入。

"document_idle"
瀏覽器會選擇在「document_end」和 window.onload 事件觸發後,插入指令碼。確切的插入時間取決於文件的複雜程度和載入時間,並會針對網頁載入速度進行最佳化。在「document_idle」執行的內容指令碼不需要監聽 window.onload 事件,因為這類指令碼一定會在 DOM 完成後執行。如果指令碼必須在 window.onload 之後執行,擴充功能可以使用 document.readyState 屬性,檢查 onload 是否已觸發。