我知道YouTube API目前不提供显示类似于原生YouTube播放列表的播放列表侧边栏的功能。
通过搜索,我找到了一个很有希望的插件来模仿这种行为。 https://github.com/jakiestfu/Youtube-TV
不幸的是,此插件不再适用于YouTube的API v.3,但是,Giorgio003创建了一个支持API v.3的分支。 https://github.com/Giorgio003/Youtube-TV
我已按照所有安装说明进行操作,但似乎无法使其正常工作。
这是我的页面:
<!DOCTYPE html>
<html>
<head>
<link href="src/ytv.css" type="text/css" rel="stylesheet" />
<script src="src/ytv.js" type="text/javascript"></script>
</head>
<body>
<div>
Testing YouTube Playlist
</div>
<div id="YourPlayerID"></div>
<script>
document.addEventListener("DOMContentLoaded", function(event) {
var controller = new YTV('YourPlayerID', {
channelId: 'UCBSvZIJlXJR7SE_KNvOiiGg'
});
});
</script>
</body>
</html>
在ytv.js中,我包含了我的API密钥
(function(win, doc) {
'use strict';
var apiKey = 'ThisIsARealKeyForMyChannel';
var YTV = YTV || function(id, opts){...
ytv.js脚本似乎运行正常。它正确找到我的频道和我上传的两个示例视频。 #YourPlayerID
的呈现HTML如下所示:
<div id="YourPlayerID" class="ytv-canvas">
<div class="ytv-relative">
<div class="ytv-video">
<iframe id="ytv-video-playerYourPlayerID0" class="ytv-video-playerContainer" frameborder="0" allowfullscreen="1" title="YouTube video player" width="640" height="360" src="https://www.youtube.com/embed/VqWWn-NrebU?enablejsapi=1&origin=http%3A%2F%2Fdevcf9.acm.org&controls=1&rel=0&showinfo=0&iv_load_policy=3&autoplay=0&theme=dark&wmode=opaque&widgetid=1"></iframe>
</div>
<div class="ytv-list">
<div class="ytv-list-header">
<a href="//youtube.com/channel/UCBSvZIJlXJR7SE_KNvOiiGg" target="_blank">
<img src="https://yt3.ggpht.com/-IGpxPi95eQQ/AAAAAAAAAAI/AAAAAAAAAAA/z-D0JYX_Wog/s88-c-k-no-mo-rj-c0xffffff/photo.jpg">
<span><i class="ytv-arrow down"></i>My Name</span>
</a>
</div>
<div class="ytv-list-inner">
<ul>
<li class="ytv-active">
<a href="#" data-ytv="VqWWn-NrebU" class="ytv-clear">
<div class="ytv-thumb">
<div class="ytv-thumb-stroke"></div>
<span>00:42</span>
<img src="https://i.ytimg.com/vi/VqWWn-NrebU/mqdefault.jpg">
</div>
<div class="ytv-content">
<b>Skin 4144</b>
<span class="ytv-views">1 Views</span>
</div>
</a>
</li>
<li>
<a href="#" data-ytv="bAWFo5ur9fc" class="ytv-clear">
<div class="ytv-thumb">
<div class="ytv-thumb-stroke"></div>
<span>00:16</span>
<img src="https://i.ytimg.com/vi/bAWFo5ur9fc/mqdefault.jpg">
</div>
<div class="ytv-content"><b>Nebula 6044</b>
<span class="ytv-views">0 Views</span>
</div>
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
但页面上不显示视频或播放列表。谁能看到我错过的东西?
答案 0 :(得分:3)
我能够解决问题。从插件创建的所有元素都将高度设置为100%。元素dat <- data.frame(V1 = 1:6, V2 = 7:12, V3 = 13:18)
mat <- matrix(1:18, 6)
g <- gl(3, 2, labels = letters[1:3])
的高度为<div id="YourPlayerID"></div>
,因此,其所有子元素的高度均为0
。一旦我给0
元素一个高度,就会出现播放列表。