การเปลี่ยนแปลงต่อไปนี้จะมีผลกับ Chrome เวอร์ชันเบต้ารุ่นล่าสุดสำหรับ Android, ChromeOS, Linux, macOS และ Windows เว้นแต่จะระบุไว้เป็นอย่างอื่น ดูข้อมูลเพิ่มเติมเกี่ยวกับฟีเจอร์ต่างๆ ที่ระบุไว้ที่นี่ผ่านลิงก์ที่ให้ไว้หรือจากรายการใน ChromeStatus.com โดย Chrome 122 เป็นรุ่นเบต้า ณ วันที่ 24 มกราคม 2024 คุณดาวน์โหลดเวอร์ชันล่าสุดได้ที่ Google.com สำหรับเดสก์ท็อปหรือ Google Play Store ใน Android
CSS
โดยรุ่นนี้ได้เพิ่มฟีเจอร์ CSS ใหม่ 3 รายการ
การค้นหา CSS @container กับฟีเจอร์ที่ไม่รองรับไม่ตรงกัน
ตัวเลือก @container
ที่มีคำค้นหาที่ไม่รองรับจะไม่เลือกคอนเทนเนอร์เลย ซึ่งหมายความว่าจะไม่มีการจับคู่ที่ตรงกัน
ซึ่งหมายความว่าการค้นหานี้จะไม่ตรงกับคอนเทนเนอร์ใดๆ แม้ว่าจะมีคอนเทนเนอร์ขนาดที่ตรงกับการค้นหาแบบความกว้างด้วยก็ตาม ตัวอย่างเช่น ข้อความค้นหาต่อไปนี้ จะไม่ตรงเลยเนื่องจากคุณลักษณะที่ไม่รู้จัก:
@container (width > 0px) or (unknown) {}
นี่เป็นการเปลี่ยนแปลงข้อกำหนดล่าสุดเพื่อหลีกเลี่ยงปัญหาความเข้ากันได้ในอนาคต
องค์ประกอบเทียมของ CSS ::backdrop
ที่รับช่วงมาจากองค์ประกอบต้นทาง
องค์ประกอบเทียม ::backdrop
ที่ใช้รับค่าจากค่าเริ่มต้น ซึ่งหมายความว่า ::backdrop
จะใช้ค่าพร็อพเพอร์ตี้ที่กำหนดเองไม่ได้ เว้นแต่จะระบุในกฎ ::backdrop
โดยตรง ตอนนี้มีการเปลี่ยนแปลงข้อกำหนดเพื่อให้ ::backdrop
รับค่ามาจากองค์ประกอบต้นทาง การเปลี่ยนแปลงนี้จะทำให้การใช้งาน Chrome เป็นไปตามข้อกำหนดใหม่
เงื่อนไข supports()
ของ CSS สำหรับ @import
@import
ยอมรับเงื่อนไข supports()
แล้ว หากเงื่อนไข supports()
ไม่ตรงกัน ระบบจะไม่ดึงข้อมูลการนําเข้า
@import "scroll-driven-animations.css" supports(animation-timeline: auto);
การค้นหาฟีเจอร์ที่จะใส่ลงใน supports()
จะเหมือนกับการค้นหาฟีเจอร์ที่ใช้กับ @supports
API ของเว็บ
Async Clipboard API: อ่าน HTML ที่ไม่ผ่านการตรวจสอบ
เพิ่มตัวเลือก unsanitized
ในเมธอด read()
เพื่อรับรูปแบบ HTML ที่ไม่ผ่านการตรวจสอบ ระบบจะล้างข้อมูลที่อ่านจากคลิปบอร์ดออก เว้นแต่ว่าเว็บไซต์จะมีพร็อพเพอร์ตี้นี้
โดยค่าเริ่มต้น เมื่ออ่านประเภท MIME text/html
โดยใช้ API แบบไม่พร้อมกัน ระบบจะเรียกใช้ตัวล้างทำความสะอาดเพื่อตัดเนื้อหาออกจากมาร์กอัป HTML เนื่องจากข้อกังวลด้านความปลอดภัย และจะมีสไตล์อยู่ใน HTML ซึ่งจะนำไปสู่เพย์โหลด HTML ขนาดใหญ่และสูญเสียคุณภาพของเนื้อหา HTML เมื่อนักพัฒนาเว็บหรือแอปบนอุปกรณ์เคลื่อนที่อ่าน
อย่าลบออบเจ็กต์ชนิดของไฟล์ใน dataTransfer.clearData()
อัปเดต Chrome ให้ตรงกับspec
ซึ่งระบุว่า clearData()
ไม่ส่งผลกระทบต่อออบเจ็กต์ไฟล์ การดำเนินการนี้จะลบออบเจ็กต์ประเภท text
เท่านั้น
FedCM: ตัดการเชื่อมต่อ
อนุญาตให้ยกเลิกการเชื่อมต่อบัญชีการเข้าสู่ระบบแบบรวมศูนย์โดยใช้เว็บไซต์ที่เกี่ยวข้อง เมื่อใช้ API ที่ยกเลิกการเชื่อมต่อ บุคคลที่ต้องใช้อาจแจ้งผู้ให้บริการข้อมูลประจำตัวว่าบัญชีที่เคยใช้งานก่อนหน้านี้ถูกตัดการเชื่อมต่อแล้ว ดังนั้นการใช้บัญชีนั้นอีกครั้งด้วยการเข้าสู่ระบบแบบรวมศูนย์จึงต้องถือว่าเป็นบัญชีใหม่
การยกเลิกเหตุการณ์เมาส์ดาวน์ที่ทำงานร่วมกันใน iframe
ทำให้เหตุการณ์ของเมาส์กำหนดเป้าหมายเป็นการยกเลิกเหตุการณ์เมาส์ลงได้เมื่อมีการลากตัวชี้ออกจาก iframe เมื่อมีการลากเมาส์ออกจาก iframe เบราว์เซอร์ทั้งหมด (รวมถึง Chrome) จะส่งเหตุการณ์ mousemove
และ mouseup
ไปยัง iframe อย่างไรก็ตาม หากเหตุการณ์เมาส์ดาวน์ถูกยกเลิก Chrome จะคงข้อยกเว้น WebKit แบบเก่าไว้ซึ่งระบบจะส่งเหตุการณ์การเลื่อนเมาส์และการเพิ่มไปยังเฟรมด้านนอก WebKit ได้นำข้อยกเว้นนี้ออกเมื่อปีที่แล้วและ Mozilla ไม่เคยแสดงลักษณะการทำงานนี้เลยในช่วงไม่กี่ปีที่ผ่านมา ฟีเจอร์นี้จะนำข้อยกเว้นเฉพาะ Chrome ออกสำหรับกรณีพิเศษนี้
ตัวช่วย Iterator
ตัวช่วยเหลือ Iterator คือวิธีการใหม่ๆ ในต้นแบบตัววนซ้ำเพื่อช่วยให้ใช้งานและใช้ประโยชน์จากตัวทำซ้ำได้โดยทั่วไป
MessagePort.onclose
การเปลี่ยนแปลง Channel Messaging API ที่เป็นการแจ้งหนึ่งใน MessagePorts ว่าพอร์ตอื่นมีความคลาดเคลื่อน ซึ่งเรียกว่า close()
,
เอกสารที่ค้างชำระถูกทำลาย หรือพอร์ตเป็นขยะ
ส่วนขยาย RTCRtpSender setParameters() สำหรับขอการสร้างคีย์เฟรม
เพิ่มพารามิเตอร์ที่ 2 (ไม่บังคับ) ลงในการเรียกใช้ RTCRtpSender.setParameters
ของ WebRTC ซึ่งสามารถใช้เพื่อขอให้โปรแกรมเปลี่ยนไฟล์ที่เชื่อมโยงสร้างคีย์เฟรมได้
ตั้งค่าวิธี
เมธอด Set คือเมธอดใหม่ เช่น การรวมและทางแยกที่เพิ่มลงในคลาส Set
ในตัวของ JavaScript
API ที่เก็บข้อมูลของพื้นที่เก็บข้อมูล
ที่เก็บข้อมูลของพื้นที่เก็บข้อมูลช่วยให้เว็บไซต์จัดระเบียบข้อมูลในอุปกรณ์เป็น "ที่เก็บข้อมูล" แยกต่างหากได้ โดยทำให้ User Agent สามารถนำข้อมูลที่จัดกลุ่มออกได้อย่างอิสระจากข้อมูลที่จัดกลุ่มอยู่ในที่เก็บข้อมูลอื่นๆ และช่วยให้เว็บไซต์จัดการข้อมูลที่เกี่ยวข้องทางหลักสรีรศาสตร์ได้ ที่เก็บข้อมูลของพื้นที่เก็บข้อมูลแต่ละรายการอาจมีข้อมูลที่เชื่อมโยงกับ API พื้นที่เก็บข้อมูลที่มีอยู่แล้ว เช่น IndexedDB และ CacheStorage
URLPattern: hasRegExpGroups
อนุญาตให้ตรวจสอบว่า URLPattern
ใช้กลุ่มนิพจน์ปกติ ECMAScript อย่างน้อย 1 กลุ่มหรือไม่ ดังนั้นจึงอาจไม่เหมาะสำหรับการใช้งานในกรณีที่เครื่องมือ ECMAScript ไม่พร้อมใช้งาน (เช่น API ที่วางแผนไว้บางรายการที่จะเปิดตัว)
หากพูดให้ชัดๆ แล้ว ข้อมูลนี้สะท้อนถึงสิ่งที่นักพัฒนาซอฟต์แวร์น่าจะรู้อยู่แล้วจากการตรวจสอบรูปแบบ แต่การมีสิทธิ์เข้าถึงการนำการตรวจสอบนี้ของ UA ไปใช้จะช่วยให้ทำได้ง่ายขึ้น
การวาดภาพ BufferStorage ของ WebGL
WebGL ช่วยให้แสดงผลเป็นพื้นผิวและบัฟเฟอร์การแสดงภาพของรูปแบบพิกเซลต่างๆ มากมาย ตัวอย่างเช่น 8 บิต, จุดลอยตัว และเข้ารหัส sRGB
บัฟเฟอร์ภาพวาดของ WebGL (บัฟเฟอร์ที่ส่งไปยังอุปกรณ์ประกอบภาพ) จะมีขนาด 8 บิตโดยค่าเริ่มต้น คุณลักษณะDrawBufferStorage ช่วยให้ WebGL สามารถกำหนดค่ารูปแบบพิกเซลของบัฟเฟอร์ภาพวาดนี้เพื่อช่วยให้นักพัฒนาซอฟต์แวร์ทำสิ่งต่อไปนี้ได้
- หลีกเลี่ยงการคัดลอกเพิ่มเติมเมื่อแปลงการแสดงผลเป็นรูปแบบพิกเซลบัฟเฟอร์ของภาพวาดเริ่มต้น
- วาดเนื้อหาที่มีความแม่นยำมากกว่า 8 บิต
ฟีเจอร์หลังจะปลดล็อกแอปพลิเคชันเพิ่มเติมหลายรายการ ได้แก่
- เนื้อหาขอบเขตสีที่กว้างมากโดยไม่สูญเสียความแม่นยํา
- การใช้งานทางการแพทย์ที่ต้องการความแม่นยำมากกว่า 8 บิต
- แอปพลิเคชันแบบ High Dynamic Range (หากมี)
การห่อหุ้มคีย์ X25519Kyber768 สำหรับ TLS
ปกป้องการรับส่งข้อมูล TLS ของ Chrome ในปัจจุบันจากการเป็นการเข้ารหัสแบบควอนตัมในอนาคตโดยการทำให้อัลกอริทึมข้อตกลงเกี่ยวกับคีย์ที่ทนทานทางควอนตัมของ Kyber768 ใช้งานได้ นี่คือข้อตกลงเกี่ยวกับคีย์ X25519 แบบไฮบริด + Kyber768 ตามมาตรฐาน IETF ข้อกำหนดและการเปิดตัวนี้อยู่นอกขอบเขตของ W3C ข้อตกลงหลักนี้จะเริ่มใช้เป็นการเข้ารหัส TLS และควรแจ้งให้ผู้ใช้ทราบอย่างโปร่งใส
ช่วงทดลองใช้จากต้นทางอยู่ระหว่างดำเนินการ
ใน Chrome 122 คุณจะเลือกใช้ช่วงทดลองใช้จากต้นทางใหม่ต่อไปนี้ได้
ส่วนขยายขอบเขตเว็บแอป
คุณกำหนดขอบเขตเว็บแอป (กำหนดโดยช่องขอบเขต) ได้ด้วยเส้นทางจากต้นทางเดียว แอตทริบิวต์ที่ใช้ในการระบุว่าเอกสารปัจจุบันของหน้าต่างแอปเป็นส่วนหนึ่งของแอปหรือไม่ และยังกำหนด URL ที่อนุญาตให้ใช้ได้ในสมาชิกไฟล์ Manifest อื่นๆ ด้วย
scope_extensions ช่วยให้นักพัฒนาแอปขยายลักษณะการทำงานของแอปให้ครอบคลุมต้นทางอื่นๆ ได้ หากมีข้อตกลงระหว่างต้นทางหลักของเว็บแอปกับต้นทางที่เกี่ยวข้อง
ลงทะเบียนทดลองใช้ส่วนขยายขอบเขตเว็บแอปจากต้นทาง
การควบคุมพื้นผิวที่บันทึกแล้ว
API การควบคุมพื้นผิวที่บันทึกช่วยให้เว็บแอปพลิเคชันสร้างเหตุการณ์วงล้อในแท็บหรือหน้าต่างที่บันทึก และอ่านหรือเขียนระดับการซูมของแท็บที่จับภาพไว้