我使用iframe youtube api处理视频。它适用于chrome和fx,但是当它在IE 8上实现时,它返回错误'video'是未定义的。如何解决问题?感谢
function loadAPI(){
var tag = document.createElement('script');
tag.src = "//www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
}
// add youtube movie
$(target).append("<iframe class = '" + className + "' id = '" + id + "' src = '" + src + "?wmode=transparent' ></iframe>");
function bindYouTube() {
var player;
player = new YT.Player(currYoutubeID, {
videoId: currYoutubeLink,
events: {
'onStateChange': onPlayerStateChange
}
});
}
function onPlayerStateChange (event) {
if (event.data == 0)
$("#" + event.target.a.id).remove();
}
P.S。我相信我使用的代码不是问题的根源,因为它在chrome和fx上按预期工作。感谢
答案 0 :(得分:1)
在某些浏览器中,如果隐藏了该元素,则Flash嵌入(嵌入在非HTML5平台上的iframe使用Flash)将不会初始化。不幸的是,很长一段时间都是这样。将嵌入式屏幕定位是一种很好的解决方法。要开始调试,请确保您的元素可见。