首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >动态创建的iFrame上的YouTube iFrame API

动态创建的iFrame上的YouTube iFrame API
EN

Stack Overflow用户
提问于 2014-10-23 22:43:01
回答 1查看 1.3K关注 0票数 3

我之所以使用YouTube iFrame API,是因为我需要能够暂停使用jQuery动态创建的视频。我有以下代码:

代码语言:javascript
复制
// Load YouTube API
var tag = document.createElement('script');
tag.src = "http://www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

$(function() {

  var player;
  
  $(document).on('click', 'button', function(){
    
    media = $(this).data('media');
    
    $('#player').append('<div id="media"><iframe width="200" height="200" src="http://www.youtube.com/embed/' + media + '?autoplay=1" frameborder="0" allowfullscreen id="media-player"></iframe>');
    
    var player = new YT.Player('media-player');
    
  })
  
  
  $('#pause').click(function(){
    
    player.pauseVideo();
    
  });
}

但是,我得到这个错误:未捕获TypeError:无法读取未定义的属性'pauseVideo‘

谁能给我指个正确的方向。任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

发布于 2014-10-24 00:20:31

您通过再次使用关键字"var“,将"player”重新定义为第一次单击回调的局部变量。去掉第二个"var“

代码语言:javascript
复制
(function() {

  var player;

  $(document).on('click', 'button', function(){

    media = $(this).data('media');

    $('#player').append('<div id="media"><iframe width="200" height="200" src="http://www.youtube.com/embed/' + media + '?autoplay=1" frameborder="0" allowfullscreen id="media-player"></iframe>');

    player = new YT.Player('media-player');

  })
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26530734

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档