เผยแพร่เมื่อวันที่ 13 พฤศจิกายน 2024
การเปลี่ยนแปลงต่อไปนี้มีผลกับ Chrome เบต้าเวอร์ชันล่าสุดในช่องทางสำหรับ Android, ChromeOS, Linux, macOS และ Windows เว้นแต่จะระบุไว้เป็นอย่างอื่น ดูข้อมูลเพิ่มเติมเกี่ยวกับฟีเจอร์ที่แสดงที่นี่ผ่านลิงก์ที่ระบุไว้หรือจากรายการใน ChromeStatus.com Chrome 132 เป็นเวอร์ชันเบต้าตั้งแต่วันที่ 13 พฤศจิกายน 2024 คุณสามารถดาวน์โหลดเวอร์ชันล่าสุดได้ใน Google.com สำหรับเดสก์ท็อป หรือใน Google Play Store บน Android
CSS
รุ่นนี้เพิ่มฟีเจอร์ CSS ใหม่ 2 รายการ
การวางตำแหน่ง Anchor ของ CSS: อนุญาต anchor-size()
ในพร็อพเพอร์ตี้ inset
และ margin
เดิมที anchor-size()
ได้รับอนุญาตเฉพาะในพร็อพเพอร์ตี้การปรับขนาดเท่านั้น มีการแก้ไขข้อกำหนดให้ใช้ anchor-size()
ในส่วนที่ฝังและระยะขอบได้ด้วย
โหมดการเขียน CSS แนวนอน
รองรับคีย์เวิร์ด sideways-rl
และ sideways-lr
สําหรับพร็อพเพอร์ตี้ writing-mode
CSS
sideways-rl
และ sideways-lr
มีประโยชน์ในการเขียนข้อความที่ไม่ใช่ CJK แนวตั้ง ฟีเจอร์เหล่านี้ไม่เหมาะกับภาษา CJK ต่างจาก vertical-rl
และ vertical-lr
Web API
จับภาพหน้าจอทั้งหมด
จับภาพหน้าจอทั้งหมดที่เชื่อมต่อกับอุปกรณ์อยู่ขณะนั้นโดยใช้ getAllScreensMedia()
การเรียก getDisplayMedia()
หลายครั้งต้องใช้ท่าทางสัมผัสของผู้ใช้หลายครั้ง ซึ่งทำให้ผู้ใช้ต้องเลือกหน้าจอถัดไปทุกครั้ง และไม่ได้รับประกันกับแอปว่ามีการเลือกหน้าจอทั้งหมดแล้ว วิธีการ getAllScreensMedia()
ปรับปรุงในด้านเหล่านี้ทั้งหมด
ฟีเจอร์นี้มีให้บริการบนเดสก์ท็อปเท่านั้น
เหตุการณ์การเปิด/ปิดกล่องโต้ตอบ
การทราบว่าองค์ประกอบ <dialog>
เปิดและปิดเมื่อใด และ popover
มี ToggleEvent
อยู่แล้วซึ่งจะส่งเมื่อป๊อปอัปเปิดหรือปิด
ก่อนหน้านี้ หากต้องการตรวจจับเมื่อ <dialog>
เปิดขึ้น คุณต้องลงทะเบียน Mutation Observer เพื่อตรวจสอบการเปิด แต่วิธีนี้ค่อนข้างยุ่งยากเมื่อเทียบกับการใช้เหตุการณ์
การเปลี่ยนแปลงนี้รวม ToggleEvent
เดียวกับที่ป๊อปอัปส่งออก แต่สำหรับองค์ประกอบ <dialog>
: เมื่อเรียก showModal
หรือ show
<dialog>
จะส่ง ToggleEvent
ที่มี newState=open
เมื่อ <dialog>
ปิด (โดยใช้ แบบฟอร์ม ปุ่ม หรือ closewatcher) ระบบควรส่ง ToggleEvent
พร้อม newState=closed
การจับภาพองค์ประกอบ
เมื่อได้รับวิดีโอ MediaStreamTrack
ผ่านวิธีการที่มีอยู่เดิมเพื่อเริ่มการจับภาพแท็บ การจับภาพองค์ประกอบจะอนุญาตให้เปลี่ยนรูปแบบแทร็กเพื่อจับภาพเฉพาะซับต้นไม้ของ DOM ที่เริ่มต้นจากองค์ประกอบหนึ่งๆ
API นี้มีความคล้ายคลึงกับ Region Capture API อยู่บ้าง แต่มีความยืดหยุ่นมากกว่าสําหรับแอปพลิเคชัน เนื่องจากทั้งเนื้อหาที่บดบังและบดบังจะถูกยกเว้นจากการจับภาพ
ฟีเจอร์การให้สิทธิ์ FedCM
ซึ่งจะรวมฟีเจอร์บางอย่างที่ผู้ให้บริการข้อมูลประจำตัว (IdP) สามารถใช้เพื่อใช้รูปแบบการให้สิทธิ์ เช่น การให้ผู้ใช้มอบสิทธิ์เข้าถึงปฏิทินของตนแก่บุคคลที่สาม (RP) กล่าวอย่างเจาะจงคือ
- IdP ต้องแสดงข้อความแจ้งที่กำหนดเองสำหรับสิทธิ์ (Continuation API) ได้
- RP ต้องมีวิธีขยายได้เพื่อสื่อสารกับ IdP ว่าต้องการเข้าถึงข้อมูลใด (API พารามิเตอร์)
- RP ต้องสามารถปรับแต่งหรือซ่อนข้อความที่อ้างอิงถึง IdP ที่แชร์ "ชื่อ อีเมล และรูปโปรไฟล์" เนื่องจากในสถานการณ์นี้ RP กำลังขอข้อมูลอื่น (API ของช่อง)
- IdP อาจต้องการใช้ปลายทางอื่นเพื่อใช้ขั้นตอนการให้สิทธิ์ (configURL หลายรายการ)
- บัญชีบางบัญชีอาจมีสิทธิ์ใช้ขั้นตอนการตรวจสอบสิทธิ์และการให้สิทธิ์เพียงขั้นตอนเดียวเท่านั้น จึงต้องมีวิธีแสดงบัญชีที่แตกต่างกันใน 2 ขั้นตอน (Account Labels API)
FedCM Mode API และ Use Other Account API
ส่วนขยายใหม่ 2 รายการสําหรับ FedCM
- โหมด: โหมด
active
อนุญาตให้เว็บไซต์เรียกใช้ FedCM ภายในการคลิกปุ่ม (เช่น การคลิกปุ่มลงชื่อเข้าใช้ IdP) ซึ่งกำหนดให้ FedCM ต้องรับประกันว่าจะตอบสนองด้วยอินเทอร์เฟซผู้ใช้ที่มองเห็นได้เสมอ การเรียกใช้ FedCM API ในโหมดทำงานจะนำผู้ใช้ไปยังการเข้าสู่ระบบผู้ให้บริการข้อมูลประจำตัว (IdP) เมื่อผู้ใช้ออกจากระบบ นอกจากนี้ เนื่องจากโหมดที่ใช้งานอยู่จะเรียกใช้ภายในท่าทางสัมผัสของผู้ใช้อย่างชัดเจน UI จึงโดดเด่นกว่า (เช่น อยู่ตรงกลางและเป็นโมดัล) เมื่อเทียบกับ UI จากโหมดที่ใช้งานอยู่ (ซึ่งไม่จําเป็นต้องอาศัยท่าทางสัมผัสของผู้ใช้และสามารถเรียกใช้ได้เมื่อโหลดหน้าเว็บ) - ใช้บัญชีอื่น: ส่วนขยายนี้ช่วยให้ IdP อนุญาตให้ผู้ใช้ลงชื่อเข้าใช้บัญชีอื่นๆ ได้
ดึงข้อมูล: Request.bytes()
และ Response.bytes()
เพิ่มเมธอด bytes()
ลงในอินเทอร์เฟซ Request
และ Response
ซึ่งจะแสดงผลเป็นพรอมิสที่แก้ไขด้วย Uint8Array แม้ว่า Request
และ Response
จะมีเมธอด
arrayBuffer()
แต่คุณจะอ่านจากบัฟเฟอร์โดยตรงไม่ได้ คุณต้องสร้างมุมมอง เช่น Uint8Array
เพื่ออ่าน เมธอด bytes()
ปรับปรุงการได้รับเนื้อหาของคำขอและการตอบกลับให้เหมาะกับการใช้งาน
การเข้าถึงระบบไฟล์สําหรับ Android และ WebView
API นี้ช่วยให้นักพัฒนาแอปสร้างแอปที่มีประสิทธิภาพซึ่งโต้ตอบกับแอปอื่นๆ (ที่ไม่ใช่เว็บ) ในอุปกรณ์ของผู้ใช้โดยใช้ระบบไฟล์ของอุปกรณ์ได้ หลังจากผู้ใช้ให้สิทธิ์เข้าถึงเว็บแอปแล้ว API นี้จะอนุญาตให้แอปอ่านหรือบันทึกการเปลี่ยนแปลงในไฟล์และโฟลเดอร์ที่ผู้ใช้เลือกโดยตรง นอกจากการอ่านและเขียนไฟล์แล้ว API นี้ยังเปิดไดเรกทอรีและแจกแจงเนื้อหา รวมถึงจัดเก็บแฮนเดิลไฟล์และไดเรกทอรีใน IndexedDB เพื่อเข้าถึงเนื้อหาเดิมอีกครั้งในภายหลัง
การเข้าถึงระบบไฟล์พร้อมให้ใช้งานใน Chrome 86 บนเดสก์ท็อป ส่วนใน Chrome 132 จะใช้ได้บน Android และ WebView
ละเว้น Strict-Transport-Security สำหรับ localhost
ส่วนหัวการตอบกลับ Strict-Transport-Security
(STS) อาจทำให้เกิดปัญหากับเว็บเซิร์ฟเวอร์ localhost เนื่องจาก STS มีผลกับทั้งโฮสต์ในพอร์ตทั้งหมด ซึ่งจะทำให้เกิดปัญหาความเข้ากันได้สำหรับนักพัฒนาเว็บที่ทดสอบในเครื่อง และยังส่งผลต่อผู้ใช้ปลายทางที่ใช้แพ็กเกจซอฟต์แวร์ที่มักเริ่มต้นเว็บเซิร์ฟเวอร์ localhost ด้วยเหตุผลชั่วคราว เช่น การสื่อสารโทเค็นการตรวจสอบสิทธิ์จากหน้าเว็บเข้าสู่ระบบไปยังแพ็กเกจซอฟต์แวร์ในเครื่อง หากผู้ฟังในเครื่อง 1 รายตั้งค่า Strict-Transport-Security
ในการตอบกลับ localhost ระบบจะใช้ค่าดังกล่าวกับคำขอ localhost ทั้งหมดที่ตามมา โดยไม่คำนึงถึงพอร์ต
Chrome 132 แก้ปัญหานี้ด้วยการละเว้นส่วนหัว Strict-Transport-Security
ในคำตอบจาก URL localhost
คอนเทนเนอร์การเลื่อนที่โฟกัสได้ของแป้นพิมพ์
การเปิดตัวฟีเจอร์นี้ (จาก Chrome 130) หยุดลงเนื่องจากความก้าวหน้าด้านการช่วยเหลือพิเศษถดถอย ปัญหานี้ได้รับการแก้ไขแล้วและฟีเจอร์จะเปิดตัวต่อไปใน Chrome 132
ไวลด์การ์ดรายการที่อนุญาตเริ่มต้นของนโยบายสิทธิ์ Private State Tokens API
การเข้าถึง Private State Token API จะจํากัดโดยฟีเจอร์นโยบายสิทธิ์
Chrome 132 อัปเดตรายการที่อนุญาตเริ่มต้นสำหรับทั้งฟีเจอร์ private-state-token-issuance
และ private-state-token-redemption
จาก self
เป็น *
(ไวลด์การ์ด)
PushMessageData::bytes()
อินเทอร์เฟซ PushMessageData
เลียนแบบอินเทอร์เฟซ Body
ซึ่งได้รับการแก้ไขเมื่อต้นปีนี้ด้วยเมธอด bytes()
ใหม่ โดยเป็นไปตามหลักการที่ว่าโดยทั่วไปแล้ว API ควรแสดงบัฟเฟอร์ไบต์เป็น Uint8Arrays
Chrome 132 ปรับให้สอดคล้องกับอินเทอร์เฟซ Body
โดยระบุตัวรับ bytes()
ในอินเทอร์เฟซ PushMessageData
ด้วย
การค้นหาที่บันทึกไว้ใน sharedStorage.selectURL
ตอนนี้ sharedStorage.selectURL()
อนุญาตให้บันทึกการค้นหาและนํามาใช้ซ้ำตามหน้าเว็บ โดยระบบจะเรียกเก็บงบประมาณการโหลดหน้าเว็บ 2 รายการเมื่อเรียกใช้การค้นหาที่บันทึกไว้เป็นครั้งแรก แต่จะไม่เรียกเก็บสำหรับการเรียกใช้การค้นหาที่บันทึกไว้ครั้งต่อๆ มาในระหว่างการโหลดหน้าเว็บเดียวกัน ซึ่งทำได้ด้วยพารามิเตอร์ savedQuery
ในตัวเลือกสําหรับ selectURL()
ที่ใช้ตั้งชื่อการค้นหา
ยกเว้นสำหรับป๊อปอัปและกล่องโต้ตอบในเอกสารที่ไม่ได้ใช้งาน
ก่อนหน้านี้ การเรียกใช้ showPopover()
หรือ showModal()
ในป๊อปอัปหรือกล่องโต้ตอบที่อยู่ในเอกสารที่ไม่ทำงานจะดำเนินการไม่สำเร็จโดยไม่มีการแจ้งเตือน ระบบจะไม่แสดงข้อยกเว้น แต่เนื่องจากเอกสารไม่ทำงาน จึงไม่มีป๊อปอัปหรือกล่องโต้ตอบแสดงขึ้น ใน Chrome 132 สถานการณ์เหล่านี้จะแสดง InvalidStateError
WebAuthn Signal API
อนุญาตให้บุคคลที่เชื่อถือ WebAuthn ส่งสัญญาณข้อมูลเกี่ยวกับข้อมูลเข้าสู่ระบบที่มีอยู่กลับไปยังผู้ให้บริการที่จัดเก็บข้อมูลเข้าสู่ระบบ เพื่อให้อัปเดตหรือนำข้อมูลเข้าสู่ระบบที่ไม่ถูกต้องหรือถูกเพิกถอนออกจาก UI ของผู้ให้บริการและระบบได้
ดูข้อมูลเพิ่มเติมเกี่ยวกับSignal API สำหรับพาสคีย์ในเดสก์ท็อป Chrome
WebGPU: การผสมผสานพื้นผิวแบบจำนวนลอยตัว 32 บิต
ฟีเจอร์ float32-blendable
GPU ทําให้พื้นผิว GPU ที่มีรูปแบบ r32float
,
rg32float
และ rgba32float
ผสมผสานกันได้
WebGPU: แสดง GPUAdapterInfo จาก GPUDevice
แอตทริบิวต์ GPUDevice adapterInfo
จะแสดง GPUAdapterInfo
เดียวกันกับออบเจ็กต์ GPUAdapter
WebGPU: การใช้งานมุมมองพื้นผิว
เพิ่มช่องที่ไม่บังคับลงในการสร้างมุมมองพื้นผิว WebGPU เพื่อขอกลุ่มย่อยของ Flag การใช้งานจากพื้นผิวต้นทาง
โดยค่าเริ่มต้น การใช้มุมมองพื้นผิวจะรับค่ามาจากพื้นผิวต้นทาง แต่ก็มีรูปแบบมุมมองที่เข้ากันไม่ได้กับการใช้งานแบบรับค่าทั้งหมด การเพิ่มช่องการใช้งานลงในการสร้างมุมมองพื้นผิวช่วยให้ผู้ใช้ขอชุดย่อยของการใช้งานพื้นผิวต้นทางที่ใช้ได้กับรูปแบบมุมมองและเฉพาะเจาะจงสำหรับการใช้งานมุมมองพื้นผิวที่ต้องการได้
การใช้งาน WebGPU ยังเพิ่มประสิทธิภาพการสร้างทรัพยากรระดับล่างและปรับปรุงประสิทธิภาพเมื่อใช้มุมมองที่มี Flag การใช้งานเฉพาะทางมากขึ้นได้ด้วย
ช่วงทดลองใช้จากต้นทางใหม่
ใน Chrome 132 คุณจะเลือกใช้ช่วงทดลองใช้จากต้นทางใหม่ต่อไปนี้ได้
Document-Isolation-Policy
Document-Isolation-Policy
ช่วยให้เอกสารเปิดใช้ crossOriginIsolation
ให้กับตนเองได้โดยไม่ต้องติดตั้งใช้งาน COOP หรือ COEP และไม่คำนึงถึงสถานะ crossOriginIsolation
ของหน้า นโยบายนี้ได้รับการสนับสนุนโดยการแยกกระบวนการ นอกจากนี้ ทรัพยากรย่อยข้ามโดเมนที่ไม่ใช่ CORS ของเอกสารจะโหลดโดยไม่มีข้อมูลเข้าสู่ระบบหรือต้องมีส่วนหัว CORP
คำแนะนำการคอมไพล์ที่ชัดเจนด้วยความคิดเห็นแบบมายากล
ฟีเจอร์นี้ช่วยให้คุณแนบข้อมูลเกี่ยวกับฟังก์ชันที่ควรแยกวิเคราะห์และคอมไพล์ในไฟล์ JavaScript ได้ ระบบจะเข้ารหัสข้อมูลเป็นความคิดเห็นแบบมายากล
การเลิกใช้งานและการนำออก
Chrome เวอร์ชันนี้มีการเลิกใช้งานและนำออกดังต่อไปนี้ โปรดไปที่ ChromeStatus.com เพื่อดูรายการการเลิกใช้งานที่วางแผนไว้ การเลิกใช้งานในปัจจุบัน และการนําออกก่อนหน้านี้
Chrome เวอร์ชันนี้จะนําฟีเจอร์ 2 รายการออก
navigator.storage
ไม่ใช่ EventTarget
อีกต่อไป
navigator.storage
ได้รับสถานะ EventTarget
สำหรับกิจกรรมแรงกดดันของพื้นที่เก็บข้อมูล ซึ่งไม่เคยผ่านระยะการสร้างต้นแบบ ระบบกําลังนําโค้ดที่ตายแล้วนี้ออก และด้วยเหตุนี้ navigator.storage
จึงจะไม่ขยาย EventTarget
อีกต่อไป
นำ API แบบเต็มหน้าจอ HTMLVideoElement
ที่มีคำต่อท้ายออก
Chrome เลิกใช้งาน API แบบเต็มหน้าจอของ HTMLVideoElement ที่มีคำต่อท้ายแล้ว
เราได้แทนที่ API เหล่านี้ด้วย Element.requestFullscreen()
API ซึ่งเปิดตัวครั้งแรกใน Chrome 71 เมื่อปี 2018 โดยไม่มีคำนำหน้า ตั้งแต่ปี 2024 เบราว์เซอร์ส่วนใหญ่รองรับ API ที่ไม่มีคำนำหน้ามาหลายปีแล้ว
Chrome 132 นำสิ่งต่อไปนี้ออกจาก HTMLVideoElement
- แอตทริบิวต์
webkitSupportsFullscreen
- แอตทริบิวต์
webkitDisplayingFullscreen
- เมธอด
webkitEnterFullscreen()
- เมธอด
webkitExitFullscreen()
โปรดสังเกตการใช้อักษรตัวพิมพ์ใหญ่ของ "S" ใน FullScreen - เมธอด
webkitEnterFullScreen()
- เมธอด
webkitExitFullScreen()
ตอนนี้เมธอดเหล่านี้เป็นเพียงชื่อแทนของ API สมัยใหม่เท่านั้น การใช้งานลดลงอย่างต่อเนื่องในช่วงหลายปีที่ผ่านมา