我正在为我的客户建立一个网站,希望YouTube嵌入式视频具有外部控制功能。这是代码。
var player;
function onYouTubePlayerAPIReady() {
player = new YT.Player('player', {
height: '100%',
width: '100%',
playerVars: {rel: 0},
videoId: 'myvideoid',
events: {
'onReady': onPlayerReady,
'onStateChange': onPlayerStateChange
}
});
}
function onPlayerStateChange(event) {
if(event.data === 0) {
player.stopVideo();
}
$(document).ready(function() {
$( '.play-btn' ).on( 'click', function() {
if ($('.video').hasClass('mobile')) {
}
else {
player.seekTo(0, true);
player.playVideo();
}
});
这在现代浏览器上运行良好,但在IE9上我有一个问题:视频在点击时开始播放。但是,当视频到达终点并再次按下外部按钮时,出现“发生错误”消息,只有视频声音开始播放。
知道可能导致这种情况的原因吗?
修改
onError事件给出错误代码5,正如我所理解的,HTML5相关。正如我首先想到的那样,错误也发生在视频结尾,而不是开头。
答案 0 :(得分:0)
删除不必要的stopVideo()函数解决了这个问题。视频在结束时已经停止,当时调用该函数并且显然导致了错误。
这解决了IE9和IE10中的问题。