Воспроизвести видео html 5 при помощи jquery
Есть код:
<div class="owl-item active">
<div class="scrollflow -slide-top s22">
<div class="video_block video_block3 ani2">
<video id="video_slays140" width="100%" preload="metadata" class="scrollflow -slide-top -opacity" loop playsinline>
<source src="https://kulibinstudio.com/image/catalog/video/Mob/video0002.mp4" type="video/mp4;codecs="avc1.42E01E, mp4a.40.2"">
</video>
</div>
</div>
</div>
let block_show140 = null;
let video140 = $("#video_slays140");
$(window).scroll(function(){
scro_play140();
});
function scro_play140() {
let wt = $(window).scrollTop();
let wh = $(window).height();
let et140 = $('#video_slays140').offset().top;
let eh140 = $('#video_slays140').outerHeight();
if (wt + wh >= et140 && wt + wh - eh140 * 2 <= et140 + (wh - eh140)){
if (block_show140 == null || block_show140 == false) {
video140.pause();
}
block_show140 = true;
} else {
if (block_show140 == null || block_show140 == true) {
video140.play();
}
block_show140 = false;
}
}
его суть: при прокрутке к элементу происходит событие. все отлично работает. проблема: но видео не запускается. консоль гугла пишет: Uncaught TypeError: video140.play is not a function скрин: http://joxi.ru/52apWXWUgBnqQm |
StartGames,
video140 у вас это объект jquery, у этого объекта нет никаких play. вам нужен сам элемент, в объекте он хранится под индексом ноль. video140[0].pause(); video140[0].play(); |
спасибо, вы совершенно правы)
|
спасибо еще раз, но не подскажите как включить или отключить звук?
пробовал так: video140[0].unmuted(); и так: video140[0].muted(); не помогает. |
StartGames,
video140[0].muted = false; video140[0].muted = true; |
ого как все просто то))
Но к сожалению после такого получил ошибки: http://joxi.ru/bmoKyRyH7k5PYm (index):4091 Uncaught (in promise) DOMException: play() failed because the user didn't interact with the document first. https://goo.gl/xX8pDD |
StartGames,
при отсутствии на странице живого юзера играть ничего не будет!!! |
Цитата:
|
StartGames,
автоматом звук и видио запрещены, пока по странице не кликнут или ещё как-то произведут событие на странице руками, а не скриптом. |
StartGames,
SuperZen, про play |
| Часовой пояс GMT +3, время: 20:38. |