ส่วนขยายสามารถใช้หน้าลบล้าง HTML เพื่อแทนที่หน้าที่ Google Chrome มีให้ตามปกติ ส่วนขยายหนึ่งอาจมีการแทนที่หน้าเว็บใดๆ ต่อไปนี้ แต่ส่วนขยายแต่ละรายการสามารถลบล้างได้เพียงหน้าเว็บเดียวเท่านั้น:
- การจัดการบุ๊กมาร์ก
- หน้าที่ปรากฏขึ้นเมื่อผู้ใช้เลือกรายการในเมนู "การจัดการบุ๊กมาร์ก" จากเมนู Chrome หรือถ้าใน Mac ก็สามารถเลือกรายการ "การจัดการบุ๊กมาร์ก" จากเมนูบุ๊กมาร์ก นอกจากนี้ คุณยังไปที่หน้านี้ได้โดยป้อน URL chrome://bookmarks
- ประวัติ
- หน้าที่ปรากฏขึ้นเมื่อผู้ใช้เลือกรายการในเมนูประวัติการเข้าชมจากเมนู Chrome หรือแสดงรายการ "แสดงประวัติการเข้าชมทั้งหมด" จากเมนูประวัติการเข้าชมใน Mac นอกจากนี้ คุณยังไปที่หน้านี้ได้โดยป้อน URL chrome://history
- แท็บใหม่
- หน้าที่ปรากฏขึ้นเมื่อผู้ใช้สร้างแท็บหรือหน้าต่างใหม่ นอกจากนี้ คุณยังไปที่หน้านี้ได้โดยป้อน URL chrome://newtab
ภาพหน้าจอต่อไปนี้แสดงหน้าแท็บใหม่เริ่มต้น และหน้าแท็บใหม่ที่กำหนดเอง
![หน้าแท็บใหม่เริ่มต้น](https://developer.chrome.com/static/docs/extensions/develop/ui/override-chrome-pages/image/the-default-tab-page-059d30739112b.png?authuser=5&hl=th)
![หน้าแท็บใหม่ที่กำหนดเอง](https://developer.chrome.com/static/docs/extensions/develop/ui/override-chrome-pages/image/a-custom-tab-page-d2b577b11a104.png?authuser=5&hl=th)
หากต้องการทดลองใช้ โปรดดูการลบล้างตัวอย่าง
ลักษณะการทำงานของหน้าต่างที่ไม่ระบุตัวตน
ในหน้าต่างที่ไม่ระบุตัวตน ส่วนขยายจะลบล้างหน้าแท็บใหม่ไม่ได้ หน้าอื่นๆ จะยังใช้ได้อยู่หากพร็อพเพอร์ตี้ไฟล์ Manifest แบบไม่ระบุตัวตนตั้งค่าเป็น "span" (ค่าเริ่มต้น) โปรดดูรายละเอียดเกี่ยวกับวิธีจัดการหน้าต่างที่ไม่ระบุตัวตนที่หัวข้อการบันทึกข้อมูลและโหมดไม่ระบุตัวตน
ไฟล์ Manifest
ใช้รหัสต่อไปนี้เพื่อลงทะเบียนหน้าการลบล้างในไฟล์ Manifest ของส่วนขยาย
{
"manifest_version": 3,
"name": "My extension",
...
"chrome_url_overrides" : {
"PAGE_TO_OVERRIDE": "myPage.html"
},
...
}
สำหรับ PAGE_TO_OVERRIDE
ให้แทนค่าใดค่าหนึ่งต่อไปนี้
"bookmarks"
"history"
"newtab"
แนวทางปฏิบัติแนะนำ
ทำให้หน้าเว็บมีขนาดกะทัดรัดและสั้นกระชับ
ผู้ใช้คาดหวังว่าหน้าเบราว์เซอร์ในตัวจะเปิดได้ทันที หลีกเลี่ยงการทำสิ่งที่อาจใช้เวลานาน โดยเฉพาะอย่างยิ่ง ให้หลีกเลี่ยงการเข้าถึงทรัพยากรฐานข้อมูลแบบพร้อมกัน เมื่อส่งคำขอเครือข่าย ให้ใช้fetch()
มากกว่าXMLHttpRequest()
ตั้งชื่อหน้าเว็บเพื่อไม่ให้ผู้ใช้เกิดความสับสน
หากไม่มีชื่อ ชื่อหน้าเว็บจะมีค่าเริ่มต้นเป็น URL ระบุชื่อโดยใช้แท็ก<title>
ในไฟล์ HTMLโปรดทราบว่าแท็บใหม่จะมีโฟกัสแป้นพิมพ์ไปยังแถบที่อยู่เป็นอันดับแรก
อย่าพึ่งพาการโฟกัสแป้นพิมพ์ที่เป็นค่าเริ่มต้นในส่วนอื่นของหน้าปรับเปลี่ยนหน้าแท็บใหม่ในแบบของคุณ
หลีกเลี่ยงการสร้างหน้าแท็บใหม่ที่ผู้ใช้อาจสับสนกับหน้าแท็บใหม่เริ่มต้นของ Chrome