我关注的是YouTube iframe api reference 以下是我初始化播放器的方法(在onYouTubeIframeAPIReady上)
undefined
我使用div来渲染播放器(不是嵌入式iframe):
undefined == null
我的问题是,每当我尝试使用函数 player = new YT.Player('player', {
playerVars: {
modestbranding: 1,
controls: controls,
frameborder: 0,
autoplay: 1,
autohide: 1,
showinfo: 0, %{-- with showinfo set to 0, the modestbranding setting doesn't work --}%
rel: 0,
start: startOffset,
},
videoId: someVideoId,
events: {
'onReady': onPlayerReady,
'onStateChange': onPlayerStateChange
},
和<div id="video-container" style="display:none;">
<div id="player"></div>
</div>
时,我都会收到错误,即播放器对象上不存在这些函数。
在进一步的研究中,我发现我们需要在视频嵌入网址(来自here)中将player.getPlayerState
参数设置为player.getCurrentTime
。但由于我没有使用iframe,因此排除了这一点。 (我不能使用iframe,因为我的视频网址是动态的。)
文档建议初始化播放器时enablejsapi
有1
parameter,但这也不起作用,我仍然会收到此错误。
初始化时使用playerVars生成的iframe不包含playerVars
属性中的enablejsapi
参数。
那么我该如何解决这个问题呢?