คำอธิบาย
ใช้ chrome.devtools.panels
API เพื่อผสานรวมส่วนขยายเข้ากับ UI ของหน้าต่างเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ โดยสร้างแผงของคุณเอง เข้าถึงแผงที่มีอยู่ และเพิ่มแถบด้านข้าง
แผงส่วนขยายและแถบด้านข้างแต่ละรายการจะแสดงเป็นหน้า HTML แยกกัน หน้าส่วนขยายทั้งหมดที่แสดงในหน้าต่างเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์จะมีสิทธิ์เข้าถึงทุกส่วนของ chrome.devtools
API รวมถึง API ของส่วนขยายอื่นๆ ทั้งหมด
คุณสามารถใช้วิธี devtools.panels.setOpenResourceHandler
เพื่อติดตั้งฟังก์ชันการเรียกกลับ
ที่จัดการคำขอของผู้ใช้ในการเปิดทรัพยากร (โดยปกติคือคลิกลิงก์ทรัพยากรใน
หน้าต่างเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์) ระบบจะเรียกใช้ตัวแฮนเดิลที่ติดตั้งไว้เพียงตัวเดียวเท่านั้น โดยผู้ใช้สามารถระบุ (โดยใช้กล่องโต้ตอบการตั้งค่าเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์) ได้ว่าจะใช้ลักษณะการทำงานเริ่มต้นหรือส่วนขยายเพื่อจัดการคำขอเปิดทรัพยากร
หากส่วนขยายเรียก setOpenResourceHandler()
หลายครั้ง ระบบจะเก็บเฉพาะ
แฮนเดิลล่าสุดไว้
ดูข้อมูลเบื้องต้นเกี่ยวกับการใช้ API ของเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ได้ที่สรุป API ของเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์
ไฟล์ Manifest
ตัวอย่าง
โค้ดต่อไปนี้จะเพิ่มแผงที่อยู่ใน Panel.html
ซึ่งแสดงโดย FontPicker.png
ใน
แถบเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ และมีป้ายกำกับเป็นเครื่องมือเลือกแบบอักษร
chrome.devtools.panels.create("Font Picker",
"FontPicker.png",
"Panel.html",
function(panel) { ... });
โค้ดต่อไปนี้จะเพิ่มแผงแถบด้านข้างที่อยู่ใน Sidebar.html
และมีชื่อว่าคุณสมบัติแบบอักษรลงใน
แผงองค์ประกอบ จากนั้นตั้งค่าความสูงเป็น 8ex
chrome.devtools.panels.elements.createSidebarPane("Font Properties",
function(sidebar) {
sidebar.setPage("Sidebar.html");
sidebar.setHeight("8ex");
}
);
ภาพหน้าจอแสดงผลลัพธ์ที่ตัวอย่างนี้จะมีต่อหน้าต่างเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์

หากต้องการลองใช้ API นี้ ให้ติดตั้งตัวอย่าง API ของแผง DevTools จากที่เก็บchrome-extension-samples
ประเภท
Button
ปุ่มที่สร้างโดยส่วนขยาย
พร็อพเพอร์ตี้
-
onClicked
Event<functionvoidvoid>
เริ่มทำงานเมื่อมีการคลิกปุ่ม
ฟังก์ชัน
onClicked.addListener
มีลักษณะดังนี้(callback: function) => {...}
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
-
-
อัปเดต
เป็นโมฆะ
อัปเดตแอตทริบิวต์ของปุ่ม หากละเว้นอาร์กิวเมนต์บางรายการหรือ
null
ระบบจะไม่ปรับปรุงแอตทริบิวต์ที่เกี่ยวข้องฟังก์ชัน
update
มีลักษณะดังนี้(iconPath?: string, tooltipText?: string, disabled?: boolean) => {...}
-
iconPath
สตริง ไม่บังคับ
เส้นทางไปยังไอคอนใหม่ของปุ่ม
-
tooltipText
สตริง ไม่บังคับ
ข้อความที่แสดงเป็นเคล็ดลับเครื่องมือเมื่อผู้ใช้วางเมาส์เหนือปุ่ม
-
ปิดอยู่
บูลีน ไม่บังคับ
ปุ่มปิดใช้อยู่หรือไม่
-
ElementsPanel
แสดงแผงองค์ประกอบ
พร็อพเพอร์ตี้
-
onSelectionChanged
Event<functionvoidvoid>
ทริกเกอร์เมื่อมีการเลือกออบเจ็กต์ในแผง
ฟังก์ชัน
onSelectionChanged.addListener
มีลักษณะดังนี้(callback: function) => {...}
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
-
-
createSidebarPane
เป็นโมฆะ
สร้างแผงภายในแถบด้านข้างของแผง
ฟังก์ชัน
createSidebarPane
มีลักษณะดังนี้(title: string, callback?: function) => {...}
-
title
สตริง
ข้อความที่แสดงในคำบรรยายแทนเสียงของแถบด้านข้าง
-
callback
ฟังก์ชัน ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(result: ExtensionSidebarPane) => void
-
ผลลัพธ์
ออบเจ็กต์ ExtensionSidebarPane สำหรับแผงแถบด้านข้างที่สร้างขึ้น
-
-
ExtensionPanel
แสดงแผงที่สร้างโดยส่วนขยาย
พร็อพเพอร์ตี้
-
onHidden
Event<functionvoidvoid>
เริ่มทำงานเมื่อผู้ใช้เปลี่ยนจากแผง
ฟังก์ชัน
onHidden.addListener
มีลักษณะดังนี้(callback: function) => {...}
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
-
-
onSearch
Event<functionvoidvoid>
ทริกเกอร์เมื่อมีการดำเนินการค้นหา (เริ่มการค้นหาใหม่ การไปยังส่วนต่างๆ ของผลการค้นหา หรือการยกเลิกการค้นหา)
ฟังก์ชัน
onSearch.addListener
มีลักษณะดังนี้(callback: function) => {...}
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(action: string, queryString?: string) => void
-
การดำเนินการ
สตริง
-
queryString
สตริง ไม่บังคับ
-
-
-
onShown
Event<functionvoidvoid>
เริ่มทำงานเมื่อผู้ใช้เปลี่ยนไปใช้แผง
ฟังก์ชัน
onShown.addListener
มีลักษณะดังนี้(callback: function) => {...}
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(window: Window) => void
-
หน้าต่าง
หน้าต่าง
-
-
-
createStatusBarButton
เป็นโมฆะ
เพิ่มปุ่มลงในแถบสถานะของแผง
ฟังก์ชัน
createStatusBarButton
มีลักษณะดังนี้(iconPath: string, tooltipText: string, disabled: boolean) => {...}
-
iconPath
สตริง
เส้นทางไปยังไอคอนของปุ่ม ไฟล์ควรมีรูปภาพขนาด 64x24 พิกเซลซึ่งประกอบด้วยไอคอนขนาด 32x24 จำนวน 2 รายการ ไอคอนด้านซ้ายจะใช้เมื่อปุ่มไม่ได้ใช้งาน ส่วนไอคอนด้านขวาจะแสดงเมื่อกดปุ่ม
-
tooltipText
สตริง
ข้อความที่แสดงเป็นเคล็ดลับเครื่องมือเมื่อผู้ใช้วางเมาส์เหนือปุ่ม
-
ปิดอยู่
บูลีน
ปุ่มปิดใช้อยู่หรือไม่
-
returns
-
-
แสดง
เป็นโมฆะ
รอดำเนินการแสดงแผงโดยการเปิดใช้งานแท็บที่เกี่ยวข้อง
ฟังก์ชัน
show
มีลักษณะดังนี้() => {...}
ExtensionSidebarPane
แถบด้านข้างที่สร้างโดยส่วนขยาย
พร็อพเพอร์ตี้
-
onHidden
Event<functionvoidvoid>
เริ่มทำงานเมื่อแผงแถบด้านข้างซ่อนอยู่เนื่องจากผู้ใช้เปลี่ยนไปใช้แผงอื่นที่โฮสต์แผงแถบด้านข้าง
ฟังก์ชัน
onHidden.addListener
มีลักษณะดังนี้(callback: function) => {...}
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
-
-
onShown
Event<functionvoidvoid>
เริ่มทำงานเมื่อแผงแถบด้านข้างปรากฏขึ้นเนื่องจากผู้ใช้เปลี่ยนไปใช้แผงที่โฮสต์แผงแถบด้านข้าง
ฟังก์ชัน
onShown.addListener
มีลักษณะดังนี้(callback: function) => {...}
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(window: Window) => void
-
หน้าต่าง
หน้าต่าง
-
-
-
setExpression
เป็นโมฆะ
กำหนดนิพจน์ที่จะได้รับการประเมินภายในหน้าเว็บที่ตรวจสอบ ผลลัพธ์จะแสดงในแผงแถบด้านข้าง
ฟังก์ชัน
setExpression
มีลักษณะดังนี้(expression: string, rootTitle?: string, callback?: function) => {...}
-
นิพจน์
สตริง
นิพจน์ที่จะประเมินในบริบทของหน้าเว็บที่ตรวจสอบ ออบเจ็กต์ JavaScript และโหนด DOM จะแสดงในโครงสร้างแบบขยายได้คล้ายกับคอนโซล/การตรวจสอบ
-
rootTitle
สตริง ไม่บังคับ
ชื่อที่ไม่บังคับสำหรับรูทของทรีนิพจน์
-
callback
ฟังก์ชัน ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
-
-
setHeight
เป็นโมฆะ
กำหนดความสูงของแถบด้านข้าง
ฟังก์ชัน
setHeight
มีลักษณะดังนี้(height: string) => {...}
-
ส่วนสูง
สตริง
ข้อกำหนดขนาดที่คล้ายกับ CSS เช่น
'100px'
หรือ'12ex'
-
-
setObject
เป็นโมฆะ
ตั้งค่าออบเจ็กต์ที่สอดคล้องกับ JSON ให้แสดงในแผงแถบด้านข้าง
ฟังก์ชัน
setObject
มีลักษณะดังนี้(jsonObject: string, rootTitle?: string, callback?: function) => {...}
-
jsonObject
สตริง
ออบเจ็กต์ที่จะแสดงในบริบทของหน้าที่ตรวจสอบ ประเมินในบริบทของผู้โทร (ไคลเอ็นต์ API)
-
rootTitle
สตริง ไม่บังคับ
ชื่อที่ไม่บังคับสำหรับรูทของทรีนิพจน์
-
callback
ฟังก์ชัน ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
-
-
setPage
เป็นโมฆะ
กำหนดให้แสดงหน้า HTML ในบานหน้าต่างแถบด้านข้าง
ฟังก์ชัน
setPage
มีลักษณะดังนี้(path: string) => {...}
-
เส้นทาง
สตริง
เส้นทางแบบสัมพัทธ์ของหน้าส่วนขยายที่จะแสดงในแถบด้านข้าง
-
SourcesPanel
แสดงแผงแหล่งที่มา
พร็อพเพอร์ตี้
-
onSelectionChanged
Event<functionvoidvoid>
ทริกเกอร์เมื่อมีการเลือกออบเจ็กต์ในแผง
ฟังก์ชัน
onSelectionChanged.addListener
มีลักษณะดังนี้(callback: function) => {...}
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
-
-
createSidebarPane
เป็นโมฆะ
สร้างแผงภายในแถบด้านข้างของแผง
ฟังก์ชัน
createSidebarPane
มีลักษณะดังนี้(title: string, callback?: function) => {...}
-
title
สตริง
ข้อความที่แสดงในคำบรรยายแทนเสียงของแถบด้านข้าง
-
callback
ฟังก์ชัน ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(result: ExtensionSidebarPane) => void
-
ผลลัพธ์
ออบเจ็กต์ ExtensionSidebarPane สำหรับแผงแถบด้านข้างที่สร้างขึ้น
-
-
พร็อพเพอร์ตี้
elements
แผงองค์ประกอบ
ประเภท
sources
แผงแหล่งที่มา
ประเภท
themeName
ชื่อของธีมสีที่ตั้งค่าไว้ในการตั้งค่าเครื่องมือสำหรับนักพัฒนาเว็บของผู้ใช้ ค่าที่เป็นไปได้: default
(ค่าเริ่มต้น) และ dark
ประเภท
สตริง
เมธอด
create()
chrome.devtools.panels.create(
title: string,
iconPath: string,
pagePath: string,
callback?: function,
): void
สร้างแผงส่วนขยาย
พารามิเตอร์
-
title
สตริง
ชื่อที่แสดงข้างไอคอนส่วนขยายในแถบเครื่องมือของเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์
-
iconPath
สตริง
เส้นทางของไอคอนแผงเทียบกับไดเรกทอรีส่วนขยาย
-
pagePath
สตริง
เส้นทางของหน้า HTML ของแผงที่สัมพันธ์กับไดเรกทอรีส่วนขยาย
-
callback
ฟังก์ชัน ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(panel: ExtensionPanel) => void
-
แผง
ออบเจ็กต์ ExtensionPanel ที่แสดงแผงที่สร้างขึ้น
-
openResource()
chrome.devtools.panels.openResource(
url: string,
lineNumber: number,
columnNumber?: number,
callback?: function,
): void
ขอให้ DevTools เปิด URL ในแผงเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์
พารามิเตอร์
-
URL
สตริง
URL ของทรัพยากรที่จะเปิด
-
lineNumber
ตัวเลข
ระบุหมายเลขบรรทัดที่จะเลื่อนไปเมื่อโหลดทรัพยากร
-
columnNumber
หมายเลข ไม่บังคับ
Chrome 114 ขึ้นไประบุหมายเลขคอลัมน์ที่จะเลื่อนไปเมื่อโหลดทรัพยากร
-
callback
ฟังก์ชัน ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
setOpenResourceHandler()
chrome.devtools.panels.setOpenResourceHandler(
callback?: function,
): void
ระบุฟังก์ชันที่จะเรียกใช้เมื่อผู้ใช้คลิกลิงก์ทรัพยากรในหน้าต่างเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ หากต้องการยกเลิกการตั้งค่าแฮนเดิล ให้เรียกเมธอดโดยไม่มีพารามิเตอร์ หรือส่งค่า Null เป็นพารามิเตอร์
พารามิเตอร์
-
callback
ฟังก์ชัน ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(resource: Resource, lineNumber: number) => void
-
แหล่งข้อมูล
ออบเจ็กต์
devtools.inspectedWindow.Resource
สำหรับทรัพยากรที่มีการคลิก -
lineNumber
ตัวเลข
ระบุหมายเลขบรรทัดภายในทรัพยากรที่คลิก
-