chrome.extensionTypes

refresh date: 2026-09-25 robots: noindex

คำอธิบาย

chrome.extensionTypes API มีการประกาศประเภทสำหรับส่วนขยาย Chrome

ประเภท

ColorArray

Chrome 139 ขึ้นไป

ประเภท

[หมายเลข, หมายเลข, หมายเลข, หมายเลข]

CSSOrigin

Chrome 66 ขึ้นไป

ต้นทางของ CSS ที่แทรก

ค่าแจกแจง

"author"

"user"

DeleteInjectionDetails

Chrome 87 ขึ้นไป

รายละเอียดของ CSS ที่จะนำออก ต้องตั้งค่าพร็อพเพอร์ตี้โค้ดหรือไฟล์อย่างใดอย่างหนึ่ง แต่จะตั้งค่าทั้ง 2 อย่างพร้อมกันไม่ได้

พร็อพเพอร์ตี้

  • allFrames

    บูลีน ไม่บังคับ

    หาก allFrames เป็น true แสดงว่าควรนำ CSS ออกจากเฟรมทั้งหมดของหน้าปัจจุบัน โดยค่าเริ่มต้นจะเป็น false และจะนำออกจากเฟรมด้านบนเท่านั้น หากตั้งค่า true และ frameId ระบบจะนำโค้ดออกจากเฟรมที่เลือกและเฟรมย่อยทั้งหมด

  • รหัส

    สตริง ไม่บังคับ

    โค้ด CSS ที่จะนำออก

  • cssOrigin

    CSSOrigin ไม่บังคับ

    ต้นทางของ CSS ที่จะนำออก ค่าเริ่มต้นคือ "author"

  • ไฟล์

    สตริง ไม่บังคับ

    ไฟล์ CSS ที่จะนำออก

  • frameId

    หมายเลข ไม่บังคับ

    เฟรมที่ควรนำ CSS ออก ค่าเริ่มต้นคือ 0 (เฟรมระดับบนสุด)

  • matchAboutBlank

    บูลีน ไม่บังคับ

    หาก matchAboutBlank เป็นจริง ระบบจะนำโค้ดออกจากเฟรม about:blank และ about:srcdoc ด้วย หากส่วนขยายมีสิทธิ์เข้าถึงเอกสารหลัก โดยค่าเริ่มต้นจะเป็น false

DocumentLifecycle

Chrome 106 ขึ้นไป

วงจรเอกสารของเฟรม

ค่าแจกแจง

"prerender"

"ใช้งานอยู่"

"แคช"

"pending_deletion"

ExecutionWorld

Chrome 111 ขึ้นไป

โลก JavaScript สำหรับสคริปต์ที่จะดำเนินการภายใน อาจเป็นโลกที่แยกจากกันซึ่งมีเฉพาะในส่วนขยายนี้ โลกหลักของ DOM ที่แชร์กับ JavaScript ของหน้าเว็บ หรือโลกของสคริปต์ของผู้ใช้ซึ่งใช้ได้เฉพาะกับสคริปต์ที่ลงทะเบียนกับ User Scripts API

ค่าแจกแจง

"ISOLATED"

"MAIN"

"USER_SCRIPT"

FrameType

Chrome 106 ขึ้นไป

ประเภทของเฟรม

ค่าแจกแจง

"outermost_frame"

"fenced_frame"

"sub_frame"

ImageDataType

Chrome 139 ขึ้นไป

ข้อมูลพิกเซลของรูปภาพ ต้องเป็นออบเจ็กต์ ImageData เช่น จากองค์ประกอบ canvas

ประเภท

ImageData

ImageDetails

รายละเอียดเกี่ยวกับรูปแบบ คุณภาพ และพื้นที่ของรูปภาพ

พร็อพเพอร์ตี้

  • รูปแบบ

    ImageFormat ไม่บังคับ

    รูปแบบของรูปภาพที่ได้ ค่าเริ่มต้นคือ "jpeg"

  • คุณภาพ

    หมายเลข ไม่บังคับ

    เมื่อรูปแบบเป็น "jpeg" จะควบคุมคุณภาพของรูปภาพที่ได้ ระบบจะไม่สนใจค่านี้สำหรับรูปภาพ PNG เมื่อคุณภาพลดลง รูปภาพที่ได้จะมีอาร์ติแฟกต์ภาพมากขึ้น และจำนวนไบต์ที่ต้องใช้ในการจัดเก็บจะลดลง

ImageFormat

Chrome 44 ขึ้นไป

รูปแบบของรูปภาพ

ค่าแจกแจง

"jpeg"

"png"

InjectDetails

รายละเอียดของสคริปต์หรือ CSS ที่จะแทรก ต้องตั้งค่าพร็อพเพอร์ตี้โค้ดหรือไฟล์อย่างใดอย่างหนึ่ง แต่จะตั้งค่าทั้ง 2 อย่างพร้อมกันไม่ได้

พร็อพเพอร์ตี้

  • allFrames

    บูลีน ไม่บังคับ

    หาก allFrames เป็น true แสดงว่าควรแทรก JavaScript หรือ CSS ลงในเฟรมทั้งหมดของหน้าปัจจุบัน โดยค่าเริ่มต้นคือ false และจะแทรกในเฟรมบนสุดเท่านั้น หากตั้งค่า true และ frameId ไว้ ระบบจะแทรกรหัสในเฟรมที่เลือกและเฟรมย่อยทั้งหมด

  • รหัส

    สตริง ไม่บังคับ

    โค้ด JavaScript หรือ CSS ที่จะแทรก

    ประกาศเตือน: โปรดระมัดระวังเมื่อใช้พารามิเตอร์ code การใช้งานที่ไม่ถูกต้องอาจทำให้ส่วนขยายของคุณเสี่ยงต่อการโจมตีแบบ Cross-Site Scripting

  • cssOrigin

    CSSOrigin ไม่บังคับ

    Chrome 66 ขึ้นไป

    ต้นทางของ CSS ที่จะแทรก โดยระบุได้เฉพาะสำหรับ CSS เท่านั้น ไม่ใช่ JavaScript ค่าเริ่มต้นคือ "author"

  • ไฟล์

    สตริง ไม่บังคับ

    ไฟล์ JavaScript หรือ CSS ที่จะแทรก

  • frameId

    หมายเลข ไม่บังคับ

    Chrome 50 ขึ้นไป

    เฟรมที่ควรแทรกสคริปต์หรือ CSS ค่าเริ่มต้นคือ 0 (เฟรมระดับบนสุด)

  • matchAboutBlank

    บูลีน ไม่บังคับ

    หาก matchAboutBlank เป็นจริง ระบบจะแทรกโค้ดในเฟรม about:blank และ about:srcdoc ด้วย หากส่วนขยายมีสิทธิ์เข้าถึงเอกสารหลัก ไม่สามารถแทรกโค้ดในเฟรมเกี่ยวกับระดับบนสุดได้ โดยค่าเริ่มต้นจะเป็น false

  • runAt

    RunAt ไม่บังคับ

    เวลาที่เร็วที่สุดที่จะมีการแทรก JavaScript หรือ CSS ลงในแท็บ ค่าเริ่มต้นคือ "document_idle"

RunAt

Chrome 44 ขึ้นไป

เวลาที่เร็วที่สุดที่จะมีการแทรก JavaScript หรือ CSS ลงในแท็บ

ค่าแจกแจง

"document_start"
สคริปต์จะได้รับการแทรกหลังจากไฟล์ใดๆ จาก CSS แต่ก่อนที่จะสร้าง DOM อื่นๆ หรือเรียกใช้สคริปต์อื่นๆ

"document_end"
สคริปต์จะได้รับการแทรกทันทีหลังจาก DOM เสร็จสมบูรณ์ แต่ก่อนที่ทรัพยากรย่อย เช่น รูปภาพและเฟรม จะโหลด

"document_idle"
เบราว์เซอร์จะเลือกเวลาที่จะแทรกสคริประหว่าง "document_end" และทันทีหลังจากที่เหตุการณ์ window.onload ทํางาน ช่วงเวลาที่แน่นอนของการแทรกจะขึ้นอยู่กับความซับซ้อนของเอกสารและระยะเวลาที่ใช้ในการโหลด รวมถึงได้รับการเพิ่มประสิทธิภาพเพื่อความเร็วในการโหลดหน้าเว็บ Content Script ที่ทำงานที่ "document_idle" ไม่จำเป็นต้องรอรับฟังเหตุการณ์ window.onload เนื่องจากรับประกันว่าจะทำงานหลังจาก DOM เสร็จสมบูรณ์ หากสคริปต์จำเป็นต้องทำงานหลังจาก window.onload ส่วนขยายจะตรวจสอบได้ว่า onload ทำงานแล้วหรือยังโดยใช้พร็อพเพอร์ตี้ document.readyState