Доброго времени суток, такая проблема, мне нужно что бы активные видео в карусели( использую OWL) автоматически начинали воспроизводится. Изначально я просто добавлял к iframe значение autoplay через js:
//циклом обхожу все irame и передаю их в функцию которая добавляет нужные атрибуты:
let oldLink= video.getAttribute('src');
let newLink=oldLink+'?rel=0&modestbranding=1&autohide=1&mute=1&autoplay=1';
video.setAttribute('src', newLink);
video.setAttribute('allow','accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture');
Но есть одна проблема с этим подходом, он не работает на мобилках. Нашел реализацию через ютуб API:
<div id="player"></div>
<script>
// 2. This code loads the IFrame Player API code asynchronously.
var tag = document.createElement('script');
tag.src = "https://www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
// 3. This function creates an <iframe> (and YouTube player)
// after the API code downloads.
var player;
function onYouTubeIframeAPIReady() {
player = new YT.Player('player', {
width: '100%',
videoId: '1w1212w12w12w',
playerVars: { 'autoplay': 1, 'playsinline': 1 },
events: {
'onReady': onPlayerReady
}
});
}
// 4. The API will call this function when the video player is ready.
function onPlayerReady(event) {
event.target.mute();
event.target.playVideo();
}
</script>
Этот вариант работает уже и на мобилке, но никак не могу засунуть его в карусель, у меня выводиться только 1 видео. Насколько я понимаю это единственный вариант как можно сделать что бы видео автоматически запускались на телефонах( если нет, то подскажите как ещё можно), но у меня не получается применить его к карусели, подскажите как сделать что бы этот код можно было вызывать к каждому видео в карусели?