首页 > 解决方案 > coverClickHandler 函数中的 YouTube(“脚本”)

问题描述

我正在尝试("script")在 coverClickHandler 函数中播放视频。

我怎样才能让它工作?

这样做允许 api 在单击之前不加载。

我几乎让它在这里工作。单击每个视频时,并非所有视频都会播放。

那是怎么固定的?

https://jsfiddle.net/4ymf9n8h/

(function manageCover() {

    function hide(el) {
        el.classList.add("hide");
    }

    function coverClickHandler(evt) {
        const cover = evt.currentTarget;
        hide(cover);
        const tag = document.createElement("script");
        tag.src = "https://www.youtube.com/player_api";
        const firstScriptTag = document.getElementsByTagName("script")[0];
        firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
    }

    const covers = document.querySelectorAll(".jacket");
    covers.forEach(function (cover) {
        cover.addEventListener("click", coverClickHandler);
    });
}());

标签: javascripthtmlcssyoutubeyoutube-api

解决方案


推荐阅读