javascript - loadVideoById() 不会更改 YouTube 播放器中的视频

标签 javascript iframe youtube-api

我正在使用 Iframe YouTube API 开发 YouTube 播放器。播放器加载视频,但是当我尝试使用 onclick 事件更改视频时,它不会更改视频。这是我的 HTML。

<li onclick="changeVideo('Vw4KVoEVcr0')"><a href=""><img class="button" src="" alt="Video Button"> item</a></li>

这是我的 JavaScript。

// JavaScript Document

//create script tag for youtube api
var tag = document.createElement("script");

//set the src attribute of the script tag to the youtube api
tag.src = "https://www.youtube.com/iframe_api";

//get the first script tag of the document
var firstScript = document.getElementsByTagName("script")[0];

//insert our youtube api tag before the first script tag in the page
firstScript.parentNode.insertBefore(tag, firstScript);

/*
*
*
*/

//the video player element
var player;

//state of the video being played
var done;

/*
*
*/
function onYouTubeIframeAPIReady(){
    //
    player = new YT.Player("player", {
        width: "848",
        height: "400",
        videoId: "Unp7GtSPJ0Y",
        events: {
            "onReady": onPlayerReady,
            "onStateChange": onPlayerStateChange
        }
    });
}

/*
*
*/
function onPlayerReady(event){
    event.target.playVideo();   
}

/*
*
*/
function onPlayerStateChange(event){
    if(event.data == YT.PlayerState.PLAYING && !done){
        setTimeout(stopVideo, 6000);
        done = true;
    }
}

/*
*
*/
function stopVideo(){
    player.stopVideo();
}

/*
* Changes the videoId and starts playing the new video
*/
function changeVideo(videoIdentifier){
    var vidId = videoIdentifier;
    player.loadVideoById(vidId);
}

最佳答案

这只是我在睡得很少之后变得非常愚蠢,哈哈。拿走链接。在视频更改之前,它不断将我重定向到页面的新版本。

关于javascript - loadVideoById() 不会更改 YouTube 播放器中的视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34128790/

相关文章:

css - Iframe - 仅垂直滚动

css - 如何为页面的一部分隔离 css?

javascript - 如何让 YouTube API 加载 onclick?

youtube - 无法通过VPN访问youtube API

javascript - 有没有一种设计模式可以轻松管理 "cascading choices"?

java - 在后台缓存 CSS 和 Javascript 或从应用程序加载它们

javascript - ReactJS/Redux/Axios 等待服务器请求完成

css - 为什么不能使用iframe绝对定位来设置高度/宽度

javascript - 动态更改 Youtube Iframe playerVars

javascript - 从 JavaScript 中的关联数组中获取第一项的最有效方法是什么?