說明
chrome.extensionTypes
API 包含 Chrome 擴充功能的型別宣告。
類型
ColorArray
類型
[數字、數字、數字、數字]
列舉
「author」
「user」
DeleteInjectionDetails
要移除的 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
影格的文件生命週期。
列舉
「prerender」
「active」
「已快取」
「pending_deletion」
ExecutionWorld
指令碼要在其中執行的 JavaScript 世界。可以是這個擴充功能專屬的獨立世界、與網頁 JavaScript 共用的 DOM 主要世界,或是僅適用於透過 User Scripts API 註冊的指令碼的使用者指令碼世界。
列舉
「ISOLATED」
「MAIN」
「USER_SCRIPT」
FrameType
影格類型。
列舉
「outermost_frame」
「fenced_frame」
「sub_frame」
ImageDataType
圖片的像素資料。必須是 ImageData 物件,例如來自 canvas
元素。
類型
ImageData
ImageDetails
圖片的格式、品質和區域詳細資料。
屬性
-
format
ImageFormat 選填
結果圖片的格式。預設值為
"jpeg"
。 -
quality
號碼 選填
如果格式為
"jpeg"
,則可控制產生的圖片品質。系統會忽略 PNG 圖片的這項值。品質越低,產生的圖片就越容易出現視覺失真,但儲存圖片所需的位元組數也會減少。
ImageFormat
圖片格式。
列舉
「jpeg」
「png」
InjectDetails
要插入的指令碼或 CSS 詳細資料。必須設定程式碼或檔案屬性,但不能同時設定兩者。
屬性
-
allFrames
布林值 選填
如果 allFrames 為
true
,表示 JavaScript 或 CSS 應插入目前網頁的所有框架。根據預設,這個值為false
,且只會注入頂端框架。如果設定true
和frameId
,程式碼會插入所選框架及其所有子框架。 -
程式碼
字串 選填
要插入的 JavaScript 或 CSS 程式碼。
警告:請謹慎使用
code
參數。如果使用不當,擴充功能可能會遭受跨網站指令碼攻擊 -
cssOrigin
CSSOrigin 選填
Chrome 66 以上版本要插入的 CSS 來源。這項設定只能用於 CSS,不能用於 JavaScript。預設為
"author"
。 -
檔案
字串 選填
要插入的 JavaScript 或 CSS 檔案。
-
frameId
號碼 選填
Chrome 50 以上版本要注入指令碼或 CSS 的框架。預設值為 0 (頂層影格)。
-
matchAboutBlank
布林值 選填
如果 matchAboutBlank 為 true,且擴充功能有權存取父項文件,系統也會在 about:blank 和 about:srcdoc 框架中插入程式碼。程式碼無法插入頂層 about:-frames。預設值為
false
。 -
runAt
RunAt 選填
JavaScript 或 CSS 最快會注入分頁中。預設值為「document_idle」。
RunAt
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
是否已觸發。