Giữ sơn – giảm ánh sáng nhấp nháy màu trắng trên các thanh điều hướng cùng nguồn gốc

Từ nãy đến giờ, Chrome đã nhanh chóng xóa màn hình khi chuyển sang trang mới để giúp người dùng yên tâm rằng trang đang tải. "flash trắng" khoảnh khắc ngắn gọn này trong đó trình duyệt hiển thị màu trắng trong khi đang tải một trang. Việc này có thể gây mất tập trung giữa các thao tác, đặc biệt là khi trang chuyển sang trạng thái thú vị hơn một cách nhanh chóng.

Tuy nhiên, đối với các trang tải nhanh như chớp, phương pháp này thực sự gây bất lợi cho trải nghiệm người dùng. Trong ảnh động sau đây, bạn sẽ thấy ví dụ về việc trông như hôm nay.

Chúng tôi là những người hâm mộ trang web này và điều đó khiến chúng tôi cảm thấy rất tiếc rằng trải nghiệm chất lượng của họ có ánh sáng loé trắng và chúng tôi muốn khắc phục nó. Chúng tôi đã thực hiện việc này bằng một hành vi mới mà chúng tôi gọi là Paint Holding (Giữ lại bản vẽ). Trong đó, trình duyệt sẽ đợi một chút trước khi bắt đầu vẽ, đặc biệt là nếu trang đủ nhanh. Điều này đảm bảo rằng trang hiển thị tổng thể, cung cấp trải nghiệm thực sự tức thì.

Cách hoạt động của chế độ này là chúng ta trì hoãn các cam kết của trình tổng hợp cho đến khi một lượt tải trang nhất định đã đạt đến tín hiệu (PLS) (ví dụ: hiển thị nội dung đầu tiên / thời gian chờ cố định). T4 phân biệt giữa công việc kết xuất luồng chính và cam kết theo luồng impl (chỉ lượt chuyển đổi sau bị trì hoãn). Việc chờ cho đến khi PLS xảy ra sẽ làm giảm khả năng xảy ra tình trạng nhấp nháy màu trắng/màu đồng nhất.

Mục tiêu của chúng tôi trong công việc này là để các thao tác điều hướng trong Chrome giữa hai trang có cùng nguồn gốc diễn ra liền mạch, nhờ đó mang lại trải nghiệm điều hướng mặc định nhanh chóng mà không có hiện tượng nền trắng/màu đồng nhất nhấp nháy giữa nội dung cũ và mới.

Hãy dùng thử tính năng Giữ Paint trong Chrome Canary (Chrome 76) và cho chúng tôi biết cảm nhận của bạn. Nhà phát triển không phải lo lắng về việc phải sửa đổi trang để tận dụng tính năng này.