我很难让API在IE7和IE8中运行。需要简单的暂停/停止检测。
即使这个演示页面也有IE8错误,回调事件也会失败: https://developers.google.com/youtube/youtube_player_demo
任何人都有解决这个问题的方法吗?
使用适用于其他浏览器的内容:
player = new YT.Player('youTubePlayer' + i, {
height: height,
width: width,
videoId: getYouTubeID(src),
enablejsapi : 1,
events: {
'onReady': onPlayerReady,
'onStateChange': onPlayerStateChange,
},
playerVars: {
controls: 1,
showinfo: 0 ,
modestbranding: 1,
wmode: "opaque"
}
});
和
function onPlayerStateChange(evt) {
if (evt.data == YT.PlayerState.PAUSED) {
}
if (evt.data == YT.PlayerState.ENDED) {
}
if (evt.data == YT.PlayerState.PLAYING) {
}
}
答案 0 :(得分:0)
Youtube Iframe API与IE7不兼容,因为该浏览器不支持postMessage
功能。你只剩下使用AS3嵌入了,虽然我不知道我会在那个篮子里放很多鸡蛋,或者......鉴于Google承诺只支持最新的两个版本的浏览器(技术上将是IE9和10,虽然看到IE8会发生什么事情会很有趣,因为Windows XP很快就会达到EOL但Windows 8的采用速度很慢),这样的问题将继续作为技术和API出现演变。
一般来说,只要你处于标准模式,IE8就可以正常工作;演示页面不会给我带来任何错误(但是当我切换到兼容性或怪癖模式时)。您是否在开发人员工具控制台中收到任何错误? (也就是说,回调失败的意思是什么?)