2015-05-02 50 views
5

Mã của tôi rất đơn giản:góc - chụp <video> khung cuối cùng như video tấm áp phích/thumb

<video ng-controller="Ctrl" ng-src="scopeSRC" autoplay></video> 

.controller('Ctrl', function ($scope, $timeout) { 

    $scope.scopeSRC = 'a_src_url'; 

    $timeout(function() { 
    $scope.scopeSRC = 'new_src_url'; 
    }, 5000); 
}); 

Bây giờ khi thay đổi src tôi xem đoạn video đen. Những gì tôi muốn làm là đặt khung cuối cùng của video src trước đó làm hình thu nhỏ trong khi src mới đang tải.

Bạn nghĩ tôi có thể đạt được điều này như thế nào?

Cảm ơn, bất kỳ sự giúp đỡ đánh giá cao

+0

bạn có cố sử dụng chức năng 'onload' bằng chỉ thị không? –

+0

@pankajparkar thú vị .. làm thế nào bạn có nghĩa là xin vui lòng? – sbaaaang

+0

tạo một chỉ thị, sẽ có 'elment.on ('tải', hàm() { // ở đây bạn mã biểu tượng ngón tay cái ẩn })' & 'elment.on ('unload', function() { // Ở đây bạn có mã hiển thị biểu tượng ngón tay cái }) 'Tôi không chắc nó có hoạt động hay không nhưng bạn có thể thử điều này –

Trả lời

1

Thay vì có 1 phần tử video và thay đổi src, sử dụng 2 yếu tố video được xếp lớp lên nhau sử dụng z-index khác.

Khi bạn muốn chuyển, tạm dừng phần tử video hiện tại, hãy chờ phần tử video thứ hai tải (nghe các sự kiện loadeddata/canplay/canplaythrough). Sau đó hoán đổi chỉ mục z để phần tử video tiếp theo ở trên đầu và sau đó phát phần tử video thứ hai.

+0

đây là một giải pháp tốt, nhưng đôi khi lớp video tạo ra một màn hình nhấp nháy, nhưng tôi hiểu không có nhiều tôi có thể làm, cảm ơn :) – sbaaaang

Các vấn đề liên quan