Sử dụng lazysizes để lazy load ảnh

Lazy load là chiến lược trong đó người ta chỉ tải các tài nguyên mà người dùng cần, chứ không tải tất cả trước trong lượt tải đầu tiên. Cách tiếp cận này giải phóng cho các tài nguyên chưa cần thiết trong lần tải đầu tiên (initial page load) và tránh phải tải một số tài nguyên mà có thể người dùng sẽ không bao giờ sử dụng đến. Các ảnh ở dưới màn hình đầu tiên (offscreen*) trong lần tải đầu tiên là ứng cử viên lý tưởng để áp dụng kỹ thuật này. Thư viện có chất …

Đọc thêm

Giới thiệu thư viện lazysizes.js để lazy load ảnh (phần 2)

Bạn đọc có thể tham khảo phần 1 về thư viện lazysizes ở đây. JS API lazysizes tự động nhận diện các phần tử mới với class lazyload, vì thế bạn không cần thực hiện lời gọi hoặc cấu hình bất cứ điều gì trong phần lớn trường hợp. JS API – các tùy chọn Các tùy chọn có thể được thiết lập bằng cách sử dụng tùy chọn cấu hình toàn cục qua khai báo bằng đối tượng có tên lazySizesConfig. Đối tượng này phải được định nghĩa trước đoạn mã của lazysizes. Dưới đây là ví dụ căn …

Đọc thêm

Giữ số lượng yêu cầu thấp và kích cỡ tải về nhỏ

Lighthouse lập báo cáo cung cấp thông tin có bao nhiêu yêu cầu mạng (network requests) được tạo ra và bao nhiêu dữ liệu được lưu chuyển (data was transferred) trong khi trang của bạn tải về: Số lượng yêu cầu (Request) và Kích cỡ lưu chuyển (Transfer Size) cho hàng Total (tổng số) được tính toán bằng cách cộng giá trị của các hàng Ảnh (Image), JavaScript (Script), Font (chữ), Stylesheet (CSS), Các cái khác (Other), Tài liệu (Document), và Tài nguyên đa phương tiện (Media). Cột Third-party không được tính giá trị vào hàng Total. Mục đích là …

Đọc thêm

Ảnh JPEG progressive là gì? Nó giúp gì trong việc cải thiện trải nghiệm người dùng?

Định dạng ảnh JPEG là một trong các định dạng ảnh phổ biến nhất trên thế giới web (các định dạng còn lại gồm PNG, GIF, SVG). Định dạng JPEG thường được sử dụng cho các ảnh phức tạp, nhiều màu sắc, thí dụ như ảnh chụp thiên nhiên, con người. Đặc tả của JPEG bao gồm một loạt các phần mở rộng hợp lệ, tuy nhiên phổ biến nhất vẫn là .jpg và .jpeg Không thành vấn đề đuôi mở rộng là gì, tất cả các ảnh JPEG sẽ được đối xử ít nhiều giống nhau, mặc dù không …

Đọc thêm

Giới thiệu LQIP – Ảnh giữ chỗ chất lượng thấp

Với lời của người dịch (1): LQIP giống cầu thủ dự bị, ảnh chất lượng cao giống như cầu thủ chính. Khi bạn sử dụng lazy load ảnh, nếu ảnh chất lượng cao chưa kịp tải, LQIP là cách xoa dịu người dùng, giống như cầu thủ dự bị là giải pháp tình thế khi cầu thủ chính bị chấn thương, tuy chơi không hay bằng nhưng còn hơn là thi đấu thiếu người. LQIP kết hợp với tải trước ảnh khi nó đi vào khung nhìn trình duyệt (viewport) là bộ đôi hoàn hảo khi bạn muốn triển khai …

Đọc thêm

Giới thiệu thư viện lazysizes.js để lazy load ảnh (phần 1)

Vài lời của người dịch: Nhờ bài viết về cách lazy load ảnh và video (có nội dung rất căn bản) tôi biết đến công cụ lazysizes.js (của tác giả có nickname aFarkas), nó được khen ngợi nhiều (rất hay được nhắc tên trong các tài liệu hướng dẫn tăng tốc của Google), do đó tôi quyết định đầu tư thời gian tìm hiểu. Vì bài khá dài nên được chia làm ba phần. Một lần nữa thì bài viết dạng này chỉ dành cho những ai muốn đào sâu về lazy load và có ý muốn triển khai trên …

Đọc thêm

Giới thiệu thư viện lazysizes.js để lazy load ảnh (phần 3)

Bạn có thể xem phần 1 về lazySizes ở đây: kiencang.net/lazysizes-js-lazy-load-anh-p1/ Còn đây là phần 2: kiencang.net/lazysizes-js-lazy-load-anh-p2/ Trình duyệt hỗ trợ lazysizes hỗ trợ tất cả các trình duyệt mà có hỗ trợ document.getElementsByClassName (= tất cả trình duyệt ngoại trừ IE8). Trong trường hợp bạn cần hỗ trợ IE8, hãy xem tiện ích mở rộng noscript (hoặc sử dụng một mẫu điều chỉnh cho noscript hoặc mẫu LQIP). Các plugin hỗ trợ Bạn nên kết hợp (concat) tất cả plugin cùng với lazySizes. Trong trường hợp bạn không concat thì lời khuyên là hãy để các đoạn mã của …

Đọc thêm

YouTube tải nặng như thế nào?

Trong bài viết tăng tốc video YouTube nhúng trong WordPress, chúng ta đã biết YouTube tải nặng như thế nào rồi, nhưng đó chỉ là mô tả tổng quan mà thôi. Trong bài này chúng ta sẽ đi vào chi tiết, để biết cụ thể YouTube tải về những file gì, dùng làm gì và nó nặng bao nhiêu (tính theo KB). Cách thử nghiệm là tôi tạo một trang HTML đơn giản, và trong trang đó tôi chỉ nhúng video YouTube, nhờ vậy công việc kiểm tra sẽ đơn giản hơn rất nhiều so với việc kiểm tra trên …

Đọc thêm

Tối ưu kích thước ảnh để tăng tốc website

Khu vực cơ hội của Lighthouse báo cáo danh sách tất cả các ảnh trên trang của bạn không có kích thước ảnh tối ưu, cùng với tiềm năng tiết kiệm tính theo kilobyte (KB). Thay đổi kích cỡ các ảnh này giúp bạn tiết kiệm dữ liệu và cải thiện thời gian tải trang. Cách Lighthouse tìm ra và đánh giá các ảnh quá cỡ Với từng ảnh trên trang, Lighthouse so sánh kích cỡ của ảnh đã được kết xuất (render) so với kích cỡ ảnh thực tế. Kích cỡ đã được kết xuất cũng được tính toán …

Đọc thêm

Giới thiệu plugin WP YouTube Lyte để lazyload video

Mô tả WP YouTube Lyte cho phép bạn “lazy load / tải lười” các video của bạn bằng cách chèn “Mã nhúng YouTube nhỏ gọn” có khả năng phản hồi nhanh (responsive). Điều này trông giống như khi bạn nhúng YouTube theo cách thông thường, nhưng khác biệt ở đây là nó chỉ gọi các trình bật YouTube nặng nề (“fat”) khi người dùng click vào, vì thế giảm được dung lượng và thời gian kết xuất đáng kể, nhất là khi bạn có nhiều video trên cùng một trang. Plugin có thể được cấu hình để cache ảnh đại …

Đọc thêm