尝试使用iFrame解决此问题,Firefox 4.0无法加载视频 这是我目前的代码。我试图调查这个网站 - https://developer.mozilla.org/en/HTML/HTML5/Optimizing_Your_Pages_for_Speculative_Parsing寻求帮助。但这对我来说并没有多大意义。
任何帮助都会感激不尽
此致 马特
<div id="myVid"></div>
<script>
var tag = document.createElement('script');
tag.src = "http://www.youtube.com/player_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
var player;
function onYouTubePlayerAPIReady() {
player = new YT.Player('myVid', {
height: '80%',
width: '100%',
events: {
'onReady': onPlayerReady,
'onStateChange': onPlayerStateChange
}
});
}
function onPlayerReady(event) {
event.target.playVideo();
}
function onPlayerStateChange(event) {
if (event.data == YT.PlayerState.ENDED) {
getVideo();
}
}
</script><
答案 0 :(得分:1)
使用YouTube嵌入方法需要具有 HTML5 postMessage 支持的现代浏览器。
您使用的Firefox版本是4.0版,但Firefox中的postMessage可从版本6 开始。
YouTube API嵌入要求:
https://developers.google.com/youtube/iframe_api_reference#Requirements
HTML5 postMessage参考:
https://developer.mozilla.org/en/DOM/window.postMessage
巧合的是,如果你使用的是Firefox版本6并且你的嵌入式标记已经完成了视频ID,那么你将面临一个灾难性的错误,这个错误在YouTube嵌入API的最后两天出现了...... Flash Fallback已经破解了!如果适用,请参阅此SO解决方案解决方案:
https://stackoverflow.com/a/10560802/1195891