我在反映不同 YouTube 视频的页面上有“TAB”。我使用 Iframe API 来加载视频点播。除了 IE 8 [我们的页面是 HTML 5] 之外,所有浏览器都可以正常工作。它开始给出此处提到的未指定错误 [第 49 行的 YouTube iframe API 错误,然后我意识到更改我的“删除”视频代码,问题就解决了。
然而,现在当用户点击 TAB 时,它首先使整个屏幕空白,然后渲染视频,几秒钟后购买完整的页面。由于更改并放置带有 ID 的新 DIV 和新播放器只是 Javascript,因此不应该这样发生。坦率地说,新页面加载比在页面中删除和放置新的 Youtube 视频更快。
关于如何提高性能的任何想法?
function AddVideo(videoid,playerid){
if(player != undefined) {
stopVideo();
player.destroy();
}
jQuery("#player").remove();
jQuery("." + playerid).html('<div id="player"></div>');
player = new YT.Player('player', {
height: '360',
width: '623',
videoId: videoid,
events: {
'onReady': onPlayerReady,
'onStateChange': onPlayerStateChange
}
});
}
以上是我的 JS 代码,它删除并放回播放器。HTML 有 li 后跟一个带有 Data-youtube 和父 DIV 参考的标签,我在其中添加“播放器”div,然后也添加 iframe youtube 视频。