Trừ phi có ghi chú khác, những thay đổi sau đây sẽ áp dụng cho bản phát hành mới nhất của kênh thử nghiệm Chrome dành cho Android, ChromeOS, Linux, macOS và Windows. Tìm hiểu thêm về các tính năng được liệt kê ở đây thông qua các đường liên kết được cung cấp hoặc trong danh sách trên ChromeStatus.com. Chrome 124 là phiên bản beta kể từ ngày 20 tháng 3 năm 2024. Bạn có thể tải xuống ứng dụng mới nhất trên Google.com cho máy tính hoặc trên Cửa hàng Google Play trên Android.
CSS
Bản phát hành này bổ sung hai tính năng CSS mới.
CSSImportRule.styleSheet
Cho phép CSSImportRule.styleSheet
có thể nhận giá trị rỗng. Thuộc tính styleSheet
trong CSSImportRule
có thể có giá trị rỗng nếu không có biểu định kiểu CSS nào được liên kết.
CSSKeyframesRule.length
Hiển thị thuộc tính length
của CSSKeyframesRule
. Các giao diện hỗ trợ thuộc tính được lập chỉ mục phải xác định thuộc tính nhập số nguyên có tên là length
.
HTML
Bản phát hành này bổ sung hai tính năng HTML mới.
Thuộc tính writingsuggestions
Các trình duyệt đang bắt đầu cung cấp các đề xuất viết cho người dùng khi họ nhập dữ liệu vào nhiều trường có thể chỉnh sửa trên web. Mặc dù cách này thường hữu ích cho người dùng, nhưng có một số trường hợp nhà phát triển có thể muốn tắt tính năng hỗ trợ ghi do trình duyệt cung cấp, chẳng hạn như các tiện ích hoặc trang web tự cung cấp chức năng tương tự.
Thuộc tính mới writingsuggestions
có các giá trị true
hoặc false
cho phép nhà phát triển bật hoặc tắt các đề xuất viết do trình duyệt cung cấp. Trạng thái thuộc tính của một phần tử cũng có thể được kế thừa từ các phần tử đối tượng cấp trên, nhờ đó cho phép nhà phát triển kiểm soát chức năng này ở quy mô mỗi phần tử hoặc trên mỗi tài liệu/tài liệu phụ.
Vùng chứa cuộn có thể lấy tiêu điểm bằng bàn phím
Cải thiện khả năng hỗ trợ tiếp cận bằng cách làm cho các vùng chứa cuộn có thể làm tâm điểm bằng cách sử dụng chức năng điều hướng lấy nét tuần tự. Trước khi có sự thay đổi này, phím Tab không lấy tiêu điểm vào trình cuộn trừ phi tabIndex
được đặt rõ ràng thành 0 hoặc lớn hơn.
Bằng cách đặt trình cuộn có thể làm tâm điểm theo mặc định, người dùng không thể (hoặc không muốn) sử dụng chuột sẽ có thể lấy tiêu điểm vào nội dung bị cắt bằng cách sử dụng thẻ và phím mũi tên trên bàn phím. Hành vi này chỉ được bật nếu thanh cuộn không chứa bất kỳ phần tử con có thể làm tâm điểm nào bằng bàn phím.
Tính năng này sẽ được triển khai từng bước kể từ Chrome 124 và sẽ được cung cấp cho tất cả người dùng qua Chrome 125. Tìm hiểu thêm về các thao tác cuộn có thể làm tâm điểm trên bàn phím.
API web
Các bổ sung vào Attribution Reporting API
Chúng tôi đã thêm các tính năng vào Attribution Reporting API để tăng thêm khả năng gỡ lỗi bằng cách hỗ trợ phân tích cú pháp báo cáo gỡ lỗi, cải thiện hiệu quả sử dụng API bằng cách hỗ trợ một trường để chỉ định nền tảng đăng ký ưu tiên, đồng thời cải thiện quyền riêng tư.
Hình trong hình của tài liệu: thêm tuỳ chọn để ẩn nút quay lại thẻ
Thao tác này sẽ thêm một tham số mới (disallowReturnToOpener
) vào API hình trong hình của tài liệu. Khi được đặt thành true, sẽ gợi ý cho trình duyệt rằng không được hiển thị nút trong cửa sổ hình trong hình cho phép người dùng quay lại thẻ mở.
Mặc dù việc có nút để quay lại thẻ trình mở luôn có ý nghĩa trong trường hợp hình trong hình của video (luồng video có thể được trả về phần tử video trong thẻ trình mở), nhưng điều này không phải lúc nào cũng đúng đối với trải nghiệm ghi lại hình trong hình. Điều này giúp nhà phát triển có nhiều quyền kiểm soát hơn đối với trải nghiệm người dùng khi họ nhận thấy một nút như vậy không phù hợp với trường hợp sử dụng của mình.
Tìm hiểu thêm trong tài liệu về Hình trong hình của tài liệu.
Chặn hiển thị tài liệu
Tính năng này cho phép tác giả chặn kết xuất một tài liệu cho đến khi nội dung quan trọng được phân tích cú pháp, đảm bảo hiển thị nhất quán lần hiển thị đầu tiên trên tất cả các trình duyệt. Nếu không có tính năng này, trạng thái của nội dung hiển thị đầu tiên phụ thuộc vào các phương pháp phỏng đoán cho hiệu suất của trình phân tích cú pháp. Các phương pháp này có thể khác nhau giữa các trình duyệt.
Điều này đặc biệt quan trọng đối với hiệu ứng Chuyển đổi khung hiển thị, trong đó trạng thái DOM được phân tích cú pháp ở khung đầu tiên có thể làm thay đổi đáng kể hiệu ứng chuyển đổi đã tạo.
Xin lưu ý rằng tính năng này triển khai cú pháp <link rel=expect href="#id">
cho phép một phần tử liên kết tham chiếu đến một phần tử dự kiến khác trên trang. Sau đó, việc kết xuất sẽ bị chặn cho đến khi phần tử dự kiến được phân tích cú pháp đầy đủ. Điều này thay thế cho cách triển khai trước đó của một thuộc tính HTML cho phép chặn hiển thị toàn bộ tài liệu.
jitterBufferTarget
thuộc tính
Thuộc tính jitterBufferTarget
cho phép các ứng dụng chỉ định thời lượng mục tiêu tính bằng mili giây nội dung nghe nhìn để bộ đệm dao động RTCRtpReceiver
lưu giữ. Điều này ảnh hưởng đến lượng lưu vào bộ đệm do tác nhân người dùng thực hiện, từ đó ảnh hưởng đến quá trình truyền lại và khôi phục khi mất gói dữ liệu. Việc thay đổi giá trị mục tiêu cho phép các ứng dụng kiểm soát sự đánh đổi giữa độ trễ phát và rủi ro hết khung hình âm thanh hoặc video do dao động mạng.
pageswap
sự kiện
Sự kiện pageswap
được kích hoạt trên đối tượng cửa sổ của tài liệu khi một thao tác điều hướng sẽ thay thế tài liệu này bằng một tài liệu mới. Sự kiện này cung cấp thông tin kích hoạt về thao tác (type
, NavigationHistoryEntry
cho tài liệu mới).
Nếu điều hướng có chuyển đổi chế độ xem nhiều tài liệu, sự kiện sẽ được gửi trước khi thu thập trạng thái cho tài liệu cũ. Điều này cho phép nhà phát triển định cấu hình trạng thái cũ được ghi lại cho quá trình chuyển đổi dựa trên thông tin kích hoạt của thao tác điều hướng và trạng thái hình ảnh hiện tại của tài liệu cũ.
Tiêu đề của yêu cầu HTTP priority
Thao tác này sẽ thêm tiêu đề của yêu cầu priority
cho tất cả các yêu cầu HTTP cùng với thông tin về mức độ ưu tiên của yêu cầu tại thời điểm gửi yêu cầu.
RFC 9218 (Giao thức ưu tiên mở rộng cho HTTP) xác định tiêu đề yêu cầu HTTP priority
để sử dụng cho việc báo hiệu mức độ ưu tiên yêu cầu đến nguồn gốc (và bên trung gian). Hướng dẫn này cũng xác định các quy trình thương lượng và khung cấp giao thức cho HTTP/2 và HTTP/3 để chuyển cùng một thông tin ưu tiên.
Tiêu đề chỉ có thể báo hiệu mức độ ưu tiên ban đầu cho một tài nguyên trong lần yêu cầu đầu tiên, trong khi các cơ chế dựa trên khung cho phép sửa đổi mức độ ưu tiên sau khi thực tế.
Tiêu đề có thể hoạt động hai đầu với máy chủ gốc (và cung cấp cơ chế để máy chủ gốc ghi đè mức độ ưu tiên nếu được bên trung gian nhận dạng) trong khi các khung bị giới hạn hoạt động ở cấp liên kết.
Tính năng này dành riêng cho việc hỗ trợ giao thức ưu tiên dựa trên tiêu đề.
Quyền truy cập mạng riêng để giảm bớt nội dung hỗn hợp
Để thiết lập kết nối với các thiết bị trên mạng cục bộ không có tên riêng biệt trên toàn cầu và do đó không thể lấy chứng chỉ TLS, tính năng này giới thiệu một tuỳ chọn mới cho fetch()
để khai báo ý định của nhà phát triển khi trò chuyện với một thiết bị như vậy. Trong đó bao gồm một tính năng mới do chính sách kiểm soát để kiểm soát quyền truy cập của từng trang web vào tính năng này và các tiêu đề mới cho phản hồi kiểm tra của máy chủ để cung cấp siêu dữ liệu bổ sung.
Gợi ý ứng dụng cho hệ số hình dạng Sec-CH-UA-
Gợi ý này cung cấp thông tin máy chủ về các hệ số hình dạng của tác nhân người dùng. Phương thức này trả về một hoặc nhiều giá trị hệ số hình dạng sau đây:
- Máy tính: Tác nhân người dùng chạy trên máy tính cá nhân.
- Automotive (Ô tô): Một tác nhân người dùng được nhúng trong xe, trong đó người dùng có thể chịu trách nhiệm vận hành xe và không thể xem các chi tiết nhỏ.
- Thiết bị di động: Thiết bị nhỏ, hướng tới thao tác chạm thường mang bên người.
- Máy tính bảng: Một thiết bị hướng tới thao tác cảm ứng có kích thước lớn hơn thiết bị "Thiết bị di động" và thường không được người dùng thực hiện.
- XR: Các thiết bị sống động giúp cải thiện hoặc thay thế môi trường xung quanh người dùng.
- EInk: Một thiết bị có đặc điểm là màn hình cập nhật chậm và có độ phân giải màu bị hạn chế hoặc không có.
- Xem: Một thiết bị di động có màn hình nhỏ (thường dưới 2 inch), được trang bị sao cho người dùng có thể nhanh chóng xem nhanh.
setHTMLUnsafe
và parseHTMLUnsafe
Phương thức setHTMLUnsafe
và parseHTMLUnsafe
cho phép sử dụng DOM tối khai báo từ JavaScript. Các phương thức này cũng cung cấp một cách dễ dàng hơn để phân tích cú pháp HTML vào DOM ngay lập tức, so với innerHTML
hoặc DOMParser
.
Các bản cập nhật cho API Bộ nhớ dùng chung
Bản cập nhật này hỗ trợ thêm khả năng chạy worklet trên nhiều nguồn gốc mà không cần phải tạo iframe.
API luồng: Lặp lại không đồng bộ ReadableStream
API luồng cung cấp các dữ liệu nguyên gốc phổ biến, có thể tương tác để tạo, kết hợp và sử dụng luồng dữ liệu. Thay đổi này hỗ trợ thêm cho giao thức lặp lại không đồng bộ cho API ReadableStream, cho phép sử dụng các luồng có thể đọc làm nguồn của vòng lặp await...of
.
SVG context-fill
và context-stroke
Triển khai một tính năng SVG hiện có cho phép các từ khoá context-fill
và context-stroke
khi chỉ định các thuộc tính tô và nét. Điều này chỉ ảnh hưởng đến những cây phụ SVG được tạo bản sao bằng phần tử <use>
và các phần tử <marker>
được tạo thực thể bằng thuộc tính marker
trên phần tử <path>
. Trong những trường hợp đó, context-fill
và context-stroke
sẽ được phân giải thành giá trị của các thuộc tính fill
và stroke
trên <use>
hoặc <path>
.
WebGPU: Hỗ trợ ServiceWorker và SharedWorker
Dịch vụ hỗ trợ ServiceWorker và SharedWorker được thêm vào WebGPU, phù hợp với các tính năng hiện có của WebGL.
Trình chạy dịch vụ bật các chức năng ngoại tuyến và xử lý nền cho WebP. Tức là các ứng dụng web dùng nhiều đồ hoạ hoặc Tiện ích của Chrome có thể lưu tài nguyên vào bộ nhớ đệm và thực hiện các phép tính ngay cả khi người dùng không chủ động tương tác với trang.
Worker dùng chung cho phép nhiều thẻ hoặc ngữ cảnh tiện ích để điều phối và chia sẻ tài nguyên WebP. Điều này giúp cải thiện hiệu suất và giúp người dùng sử dụng phần cứng đồ hoạ hiệu quả hơn.
API WebSocketStream
API WebSocket cung cấp giao diện JavaScript cho giao thức WebSocket RFC6455. Mặc dù phân phát hiệu quả, nhưng xét về mặt công thái học thì phương pháp này khá bất lợi và thiếu tính năng quan trọng là tính năng backpressure ( áp lực ngược). Mục đích của API WebSocketStream là giải quyết những thiếu sót này bằng cách tích hợp các Luồng whatWG với API WebSocket.
Tìm hiểu thêm trong bài viết WebSocketStream: tích hợp luồng với API WebSocket.
Đóng gói khoá X25519Kyber768 cho TLS
Bảo vệ lưu lượng truy cập TLS (Bảo mật tầng truyền tải) hiện tại của Chrome khỏi phương pháp phân tích mật mã lượng tử trong tương lai bằng cách triển khai thuật toán thoả thuận khoá kháng lượng tử Kyber768.
Đây là một thoả thuận khoá lai X25519 và Kyber768 dựa trên tiêu chuẩn IETF. Thông số kỹ thuật và bản phát hành này nằm ngoài phạm vi W3C. Thoả thuận về khoá này sẽ được ra mắt dưới dạng một thuật toán mật mã TLS và phải minh bạch với người dùng.
Tìm hiểu thêm về bài viết Bảo vệ lưu lượng truy cập Chrome bằng Kyber KEM kết hợp.
Đang trong quá trình dùng thử theo nguyên gốc
Trong Chrome 124, bạn có thể chọn tham gia các bản dùng thử theo nguyên gốc mới sau đây.
Thử nghiệm ngừng sử dụng cho các sự kiện biến đổi
Các sự kiện đột biến, bao gồm DOMSubtreeModified
, DOMNodeInserted
, DOMNodeRemoved
, DOMNodeRemovedFromDocument
, DOMNodeInsertedIntoDocument
và DOMCharacterDataModified
, có thể làm tổn hại đến hiệu suất trang và cũng làm tăng đáng kể độ phức tạp của quá trình thêm các tính năng mới vào web. Các API này không còn được dùng trong quy cách vào năm 2011 và được thay thế (vào năm 2012) bằng API Mutation Observer hoạt động tốt hơn nhiều.
Tính năng hỗ trợ sự kiện đột biến sẽ bị tắt theo mặc định kể từ Chrome 127 vào khoảng ngày 30 tháng 7 năm 2024. Mã phải được di chuyển sang Mutation Observer API trước ngày đó để tránh gây gián đoạn trang web. Nếu cần thêm thời gian, hãy đăng ký Bản dùng thử ngừng sử dụng sự kiện thay đổi để bật lại tính năng này trong một khoảng thời gian giới hạn trên một trang web nhất định. Bạn có thể sử dụng phiên bản này thông qua Chrome 134, kết thúc vào ngày 25 tháng 3 năm 2025.
Ngoài ra, bạn cũng có thể sử dụng chính sách doanh nghiệp MutationEventsEnabled
cho
cùng một mục đích, thông qua Chrome 134.
Đăng ký Bản dùng thử về việc ngừng sử dụng sự kiện thay đổi.
Ngừng sử dụng và xoá bỏ
Phiên bản Chrome này ra mắt một số phương án ngừng sử dụng và xoá như sau. Hãy truy cập vào ChromeStatus.com để xem danh sách các phương thức ngừng sử dụng theo kế hoạch, phương thức không dùng nữa hiện tại và các yêu cầu xoá trước đây.
Bản phát hành Chrome này sẽ loại bỏ một tính năng.
Xoá bí danh "window-placement" cho chính sách quyền và quyền "window-management"
Xoá bí danh "window-placement" cho chính sách quyền và chính sách quyền "window-management". Đây là một phần trong nỗ lực lớn hơn nhằm đổi tên các chuỗi bằng cách ngừng sử dụng và xoá "window-placement". Việc thay đổi thuật ngữ sẽ giúp cải thiện tuổi thọ của chỉ số mô tả vì API Quản lý cửa sổ phát triển theo thời gian.