我有以下功能的youtube iframe。
<iframe width="100%" height="100%"
src="//youtube.com/embed/93HWMspjxqI?autoplay=0&origin=http://site.dev&enablejsapi=1"
frameborder="0" id="video-93HWMspjxqI">
</iframe>
我想绑定视频关闭事件。这似乎是由youtube iframe_api中的onStateChange事件决定的。
阅读文档,我发现如何通过这样做将播放器对象包装在现有的iframe之上:
var player = new YT.Player("video-"+youtubeParser.getYouTubeIdFromUrl(videoUrl), {
events : {
onStateChange : function () {
console.log("state change");
}
}
});
检查控制台,我看到我的视频对象已正确创建。
但是,我收到了大量错误,并收到以下消息:
我尝试在播放器初始化中添加以下参数:
var player = new YT.Player("video-"+videoUrl, {
playerVars : {
origin : window.location.protocol + "//"+window.location.host,
enablejsapi : 1
},
events : {
onStateChange : function () {
console.log("state change");
}
}
});
这仍然无法奏效。出现相同的原点错误。为什么?它似乎不是一个本地托管问题。我在这个jsfiddle代码中分离了问题:http://jsfiddle.net/srrbqfnm/1/