0

我很难让 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) {
    }
}
4

1 回答 1

0

Youtube Iframe API 与 IE7 不兼容,因为该浏览器不支持该postMessage功能。你只能使用 AS3 嵌入,虽然我不知道我会在那个篮子里放很多鸡蛋……鉴于谷歌承诺只支持最新的两个版本的浏览器(从技术上讲将是 IE9 和 10,尽管看看 IE8 会发生什么会很有趣,因为您的 Windows XP 即将达到 EOL 但 Windows 8 的采用速度很慢),这样的问题将随着技术和 API 的不断出现发展。

通常,只要您处于标准模式,IE8 现在就可以正常工作;演示页面对我没有任何错误(但是当我切换到兼容性或怪癖模式时)。您是否在开发人员工具控制台中遇到任何错误?(也就是说,回调失败是什么意思?)

于 2013-04-11T04:56:17.703 回答