在玩家中加载新视频



我无法在下面的代码工作。我将一个播放器放在页面上,并加载视频。这是预期的。然后,当用户单击其中一个时,我想播放许多其他视频的缩略图(此处仅显示两个)。这部分不起作用。我在控制台上收到一条错误消息,说ytplayer.loadvideobyid不是一个函数。我正在Firefox 26.0上进行测试。

<html>
<head>
</head>
<body>
<table width="900" align="center" border="0" cellpadding="0" cellspacing="1">
  <tbody>       
<tr>
  <td>      
    <div id="ytplayer"></div>
  <td>   
</tr>   
<tr>
  <td>      
     <a href="javascript:void(0);" onclick="ytplayer.loadVideoById('tCnEH8MRrjE',0);"><img src="http://img.youtube.com/vi/tCnEH8MRrjE/hqdefault.jpg" width="176" height="132"></a>     
  </td>   
</tr>   
<tr>
       <td>     
      <a href="javascript:void(0);" onclick="ytplayer.loadVideoById('lqdFrGFo6SQ',0);"><img src="http://img.youtube.com/vi/lqdFrGFo6SQ/hqdefault.jpg" width="176" height="132"></a>    
   </td>   
</tr>   
  </tbody>
</table>
    <script  type="text/javascript">
     // Replace the 'ytplayer' element with an <iframe> and
      // YouTube player after the API code downloads.
      var player;
      function onYouTubeIframeAPIReady() 
      {
        player = new YT.Player('ytplayer', 
        {
          height: '390',
          width: '640',
          videoId: 'tCnEH8MRrjE',
        });
      }  
     // Load the IFrame Player API code asynchronously.
     var tag = document.createElement('script');
     tag.src = "https://www.youtube.com/player_api";
     var firstScriptTag = document.getElementsByTagName('script')[0];
     firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
   </script>
  </body>
</html>

您将HTML元素("ytplayer")的ID与JavaScript变量(player)的名称混淆。将ytplayer.loadVideoById(...)更改为player.loadVideoById(...)

另外,您可以为所有这些都使用相同的符号(playerytplayer)...

相关内容

  • 没有找到相关文章

最新更新