我刚刚在IE 8中查看我的youtube播放器并发现'onReady','onStateChange'事件未触发。正在调用initPlayer方法并播放视频,但事件未触发。
在Safari,Firefox Mac,FireFox Win上按预期工作。
我在这里错过了什么吗?
以下是相关代码:
MyPlayer.prototype = {
/* [...] */
initPlayer: function () {
var that = this;
alert("initPlayer: (IE 8 gets this far)");
this.player = new YT.Player(this.cfg.divTagId, {
height: this.cfg.height,
width: this.cfg.width,
videoId: this.cfg.videoId,
origin: location.host,
playerVars: {
controls: this.cfg.controls,
wmode: 'opaque',
fs: 0
},
events: {
'onReady': function (event) {alert("onReady")},
'onStateChange': function (event) {alert("onChange")}
}
});
},
/ * [...] * /
}
答案 0 :(得分:2)
一个可能的因素:如果您在本地运行它,API将无法在IE中正常运行 - 尝试从http:path运行您的代码。
来源:
http://groups.google.com/forum/?fromgroups=#!topic/youtube-api-gdata/LV49fIR5Uo0
答案 1 :(得分:0)
这是YouTube api代码中的一个旧错误。它应该都在这一点上工作。