Попытка заставить автозапуск работать после щелчка по изображению

  • Автор темы Светлана Солодкая
  • 32
  • Обновлено
  • 13, May 2024
  • #1
Сейчас он не воспроизводится автоматически после нажатия:

1.)

https://jsfiddle.net/byw5szgt/200/

Эта часть здесь должна работать с:
 

(function iife() {

"use strict";

const show = (el) => el.classList.remove("hide");

const hide = (el) => el.classList.add("hide");

const enableAutoplay = (el) => el.src.replace("autoplay=0", "autoplay=1");

const autoplay = (el) => el.setAttribute("src", enableAutoplay(el));

function coverClickHandler(evt) {

const cover = evt.currentTarget;

const wrapper = cover.parentNode.querySelector(".wrapg");

hide(cover);

show(wrapper);

autoplay(wrapper);

}

const cover = document.querySelector(".jacketc");

cover.addEventListener("click", coverClickHandler);

}());

(function videoPlayer() {

"use strict";

function onPlayerReady(evt) {

const player = evt.target;

player.setVolume(50); // percent

}

const tag = document.createElement("script");

tag.src = "[URL='https://lumtu.com/yti/ch99hcGlodHRwczovL3lvdXR1YmUuY29tL3BsYXllclllX']https://www.youtube.com/player_api[/URL]";

const firstScriptTag = document.getElementsByTagName("script")[0];

firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

window.onYouTubePlayerAPIReady = function() {

const video = document.querySelector(".video");

const videoId = video.getAttribute("data-id");

new YT.Player(video, {

width: 606,

height: 344,

videoId: videoId,

playerVars: {

autoplay: 0,

controls: 1,

showinfo: 1,

rel: 0,

iv_load_policy: 3,

cc_load_policy: 0,

fs: 0,

disablekb: 1

},

events: {

"onReady": onPlayerReady

}

});

};

}());

Код (JavaScript): Этот:

 <div class="video" data-id="M7lc1UVf-VE"></div>

Код (JavaScript): Я не знаю, как заставить их работать.

2.)
Такая настройка не работает:

https://jsfiddle.net/byw5szgt/203/

 (function iife() { "use strict"; const show = (el) => el.classList.remove("hide"); const hide = (el) => el.classList.add("hide"); function coverClickHandler(evt) { const cover = evt.currentTarget; const wrapper = cover.parentNode.querySelector(".wrapg"); hide(cover); show(wrapper); // video } const cover = document.querySelector(".jacketc"); cover.addEventListener("click", coverClickHandler); }());

Код (JavaScript):
  playerVars: { autoplay: 1,

Код (JavaScript): ```

Внутри Firefox или Chrome, за пределами jsfiddle, вы можете ясно видеть, что это

автоматически воспроизводится до щелчка по изображению. Он начинает играть за изображением.

Вот почему код должен работать так, как он настроен в 1.),
но я не могу понять, как заставить его работать.

https://jsfiddle.net/byw5szgt/200/

HTML
  window.onYouTubePlayerAPIReady = function() { const video = document.querySelector(".video"); const videoId = video.getAttribute("data-id"); state.player = new YT.Player(video, { width: 606, height: 344, videoId: videoId, playerVars: { autoplay: 0,

HTML: Это полный код JavaScript:
  const enableAutoplay = (el) => el.src.replace("autoplay=0", "autoplay=1"); const autoplay = (el) => el.setAttribute("src", enableAutoplay(el));

Код (JavaScript):

Светлана Солодкая


Рег
30 Jan, 2015

Тем
1

Постов
1

Баллов
11
Тем
49554
Комментарии
57426
Опыт
552966

Интересно