【发布时间】:2013-02-19 06:31:40
【问题描述】:
我在页面上有反映不同 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 视频。
【问题讨论】:
-
不仅仅是性能,有时它甚至没有显示完整的页面,而只有视频播放器。有什么想法吗?