chrome.extensionTypes

คำอธิบาย

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

ประเภท

ColorArray

รอดำเนินการ

ประเภท

[number, number, number, number]

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"

"active"

"cached"

"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

รอดำเนินการ

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