Tối ưu tải sau "Lazy Load" Embedded YouTube Videos

Thảo luận trong 'Tin tức lập trình Website' bắt đầu bởi admin, 16/11/20.

  1. admin
    Tham gia ngày:
    22/5/13
    Bài viết:
    4,895
    Đã được thích:
    1,198
    Điểm thành tích:
    113
    Giới tính:
    Nam
    Cách tối ưu tải sau Lazy Load Embedded Video Youtube rất quan trọng khi website của bạn cần sử dụng nhúng video và website. Vì nếu bạn không tối ưu tải sau Lazy load điểm tốc độ google speed sẽ rất chậm và có thể tụt thảm dù web bạn có tối ưu tốt cỡ nào.

    Chúng ta có nhiều cách tối ưu load tải sau VD:

    Cách 1: Lazy load bằng thuộc tính có sẵn
    • HMTL cung cấp cho chúng ta 1 thuộc tính vô cùng hưu ích để tối ưu tải sau là: loading="lazy"
    Cách chèn vô như sau:
    Mã:
    <iframe src="liên-kết-youtube-cua-ban"
            loading="lazy"
            width="700"
            height="450"></iframe>
    
    • Với cách này video không load trước khi bạn chưa kéo tới vị trí index của video.
    Cách 2: Dùng javascript để load tải sau thông qua sự kiện click.
    • Với cách này video của bạn hầu như không load, video chỉ được load khi sự kiện người dùng click vào video để xem thì video mới được chạy.
    Cách chèn như sau:

    Chèn HTML sau vô:
    HTML:
    <div class="youtube" data-embed="HBMEVUo6omQ">
            <div class="play-button"></div>
    </div>
    
    Chèn css sau vào web.
    HTML:
    .youtube {
        background-color: #000;
        margin-bottom: 30px;
        position: relative;
        padding-top: 56.25%;
        overflow: hidden;
        cursor: pointer;
    }
    .youtube img {
        width: 100%;
        top: -16.82%;
        left: 0;
        opacity: 0.7;
    }
    .youtube .play-button {
        width: 90px;
        height: 60px;
        background-color: #333;
        box-shadow: 0 0 30px rgba( 0,0,0,0.6 );
        z-index: 1;
        opacity: 0.8;
        border-radius: 6px;
    }
    .youtube .play-button:before {
        content: "";
        border-style: solid;
        border-width: 15px 0 15px 26.0px;
        border-color: transparent transparent transparent #fff;
    }
    .youtube img,
    .youtube .play-button {
        cursor: pointer;
    }
    .youtube img,
    .youtube iframe,
    .youtube .play-button,
    .youtube .play-button:before {
        position: absolute;
    }
    .youtube .play-button,
    .youtube .play-button:before {
        top: 50%;
        left: 50%;
        transform: translate3d( -50%, -50%, 0 );
    }
    .youtube iframe {
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
    }
    Tiếp theo chèn javascript sau vào web:
    HTML:
    ( function() {
    
        var youtube = document.querySelectorAll( ".youtube" );
        
        for (var i = 0; i < youtube.length; i++) {
            
            var source = "https://img.youtube.com/vi/"+ youtube[i].dataset.embed +"/sddefault.jpg";
            
            var image = new Image();
                    image.src = source;
                    image.addEventListener( "load", function() {
                        youtube[ i ].appendChild( image );
                    }( i ) );
            
                    youtube[i].addEventListener( "click", function() {
    
                        var iframe = document.createElement( "iframe" );
    
                                iframe.setAttribute( "frameborder", "0" );
                                iframe.setAttribute( "allowfullscreen", "" );
                                iframe.setAttribute( "src", "https://www.youtube.com/embed/"+ this.dataset.embed +"?rel=0&showinfo=0&autoplay=1" );
    
                                this.innerHTML = "";
                                this.appendChild( iframe );
                    } );   
        };
        
    } )();
    
    Vậy là xong, chạy web tận hưởng nhé.
     
    Cảm ơn đã xem bài:

    Tối ưu tải sau "Lazy Load" Embedded YouTube Videos

  2. admin
    Tham gia ngày:
    22/5/13
    Bài viết:
    4,895
    Đã được thích:
    1,198
    Điểm thành tích:
    113
    Giới tính:
    Nam


Chủ để tương tự : Tối tải
Diễn đàn Tiêu đề Date
Tin tức lập trình Website Tối ưu hóa tốc độ tải trang cho website du lịch 10/1/20
Tin tức lập trình Website Cần anh em giúp phần tối ưu web 29/6/17
Tin tức lập trình Website HỌC LẬP TRÌNH TESTER TỪ CƠ BẢN TỚI NÂNG CAO Ở ĐÂU TỐT NHẤT TP HỒ CHÍ MINH? 26/4/17
Tin tức lập trình Website Magento là gì? Tại sao nên sử dụng Magento? 14/8/20
Tin tức lập trình Website Tại sao tỷ lệ chuyển đổi thấp? 13/6/19