javascript - 防止在 YouTube 视频之间快速转换时出现控制台错误

标签 javascript jquery youtube youtube-api youtube-javascript-api

我正在创建一个网站,我在其中嵌入 YouTube 视频,点击某些 url。视频的包装器最初是隐藏的,因此我在单击 url 然后创建播放器时显示包装器。

一切都很好,除了在 url 之间快速转换的情况下,控制台中会抛出一些错误,如下所示 -

Uncaught TypeError: Object #<O> has no method 'cueVideoById'

这是示例代码 - http://jsfiddle.net/2b6bu7p4/2/

仅当我在页面加载后第一次开始快速单击 url 时才会发生这种情况。如果我慢慢开始,它工作得很好。

我怎样才能解决这个问题?提前致谢。

最佳答案

所以一个快速的解决方法是确保播放器在 cueVideoById 之前准备好。叫做

function loadVideoOnClick(videoId) {
    console.log('Loading');
    if (player && player.cueVideoById) {
        player.cueVideoById(videoId);
    }
}

fiddle :http://jsfiddle.net/leighking2/2b6bu7p4/5/

关于javascript - 防止在 YouTube 视频之间快速转换时出现控制台错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26844274/

相关文章:

javascript - 如何将数组值从 javascript 传递到 angularjs Controller

javascript - Typescript - 内部模块中的导入声明不能引用外部模块

javascript - 尝试动态分割字符串不断出现错误?

html - 如何将 YouTube 缩略图换成最新上传的内容?

javascript - 从 JSON 数据创建 HTML 项目符号列表时出现问题

javascript - KeystoneJS,在模型 AdminUI 中显示多对多关系

javascript - 如何在嵌套 GridView 中将鼠标悬停在图像上时获取 jquery 弹出窗口

java - struts2 长轮询与 jquery

javascript - Youtube:提高页面加载速度(Greasemonkey/jQuery)

javascript - YouTube JavaScript Player API seekTo()不可靠