Zheleznov
@Zheleznov

Как сделать отложенную загрузку для видео в теге video?

Привет всем!
Подскажите пожалуйста как сделать отложенную загрузку для видео?
Т.е. чтобы оно загружалось только после того, как по нему кликнут. А до этого просто черный экран

Которые прописаны в теге video:
<div class="video-block">
    <video id="my-player" class="video-js" controls data-setup='{}'>
        <source src="./video/blum/2.mp4" type="video/mp4"></source> 
    </video>
</div>


Везде только для iframe находил.. может библиотека есть какая-то?
Для видео используется проигрыватель videojs https://docs.videojs.com/
но там не нашёл ничего подобного
  • Вопрос задан
  • 476 просмотров
Решения вопроса 1
zkrvndm
@zkrvndm
Архитектор решений
Примерно так:
<div onclick="this.querySelector('source').setAttribute('src', this.querySelector('source').getAttribute('data-src')); this.removeAttribute('onclick');" class="video-block">
    <video id="my-player" class="video-js" controls data-setup='{}'>
        <source data-src="./video/blum/2.mp4" type="video/mp4"></source> 
    </video>
</div>

При клике, будет добавлен атрибут src, содержимое которого взято был бы из data-src. Это простой вариант в лоб, но это конечно несколько неправильно, по уму все скрипты надо вынести во вне, а не писать инлайново.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы