我正在尝试使用无边框播放器在一个网页中嵌入多个YouTube视频。这不是同一个播放器中的多个视频,这是单个页面上的多个播放器。
这是一个例子。 (只显示最后一个视频):
<div>
<div id="ytapiplayer">
You need Flash player 9+ and JavaScript enabled to view this video.
</div>
<script type="text/javascript">
var params = { allowScriptAccess: "always" };
var atts = { id: "myytplayer" };
swfobject.embedSWF("http://www.youtube.com/apiplayer?enablejsapi=1&version=3&playerapiid=1234","ytapiplayer", "499", "281", "9", null, null, params, atts);
function onYouTubePlayerReady(playerId) {
ytplayer = document.getElementById("myytplayer");
ytplayer.cueVideoById("Zhawgd0REhA");
}
</script>
</div>
<div>
<div id="ytapiplayer2">
You need Flash player 9+ and JavaScript enabled to view this video.
</div>
<script type="text/javascript">
var params = { allowScriptAccess: "always" };
var atts = { id: "myytplayer2" };
swfobject.embedSWF("http://www.youtube.com/apiplayer?enablejsapi=1&version=3&playerapiid=4321","ytapiplayer2", "499", "281", "9", null, null, params, atts);
function onYouTubePlayerReady(playerId) {
ytplayer2 = document.getElementById("myytplayer2");
ytplayer2.cueVideoById("qkAn_qJdgBs");
}
</script>
</div>
非常感谢任何帮助。
答案 0 :(得分:1)
固定:
<script type="text/javascript">
var params = { allowScriptAccess: "always" };
var atts = { id: "myytplayer" };
swfobject.embedSWF("http://www.youtube.com/apiplayer?enablejsapi=1&version=3&playerapiid=player1","ytapiplayer", "499", "281", "9", null, null, params, atts);
function onYouTubePlayerReady(playerId) {
if(playerId == "player1"){
ytplayer = document.getElementById("myytplayer");
ytplayer.cueVideoById("H9v3eky91no");
}else{
if(playerId == "player2"){
ytplayer2 = document.getElementById("myytplayer2");
ytplayer2.cueVideoById("EGnwL0ganu0");
}
}
}
</script>
</div>
<div>
<div id="ytapiplayer2">
You need Flash player 9+ and JavaScript enabled to view this video.
</div>
<script type="text/javascript">
var params = { allowScriptAccess: "always" };
var atts = { id: "myytplayer2" };
swfobject.embedSWF("http://www.youtube.com/apiplayer?enablejsapi=1&version=3&playerapiid=player2","ytapiplayer2", "499", "281", "9", null, null, params, atts);
</script>
</div>
答案 1 :(得分:1)
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js"></script>
<div>
<div id="ytapiplayer">
You need Flash player 9+ and JavaScript enabled to view this video.
</div>
<script type="text/javascript">
var params = { allowScriptAccess: "always" };
var atts = { id: "myytplayer" };
swfobject.embedSWF("http://www.youtube.com/apiplayer?enablejsapi=1&version=3&playerapiid=player1","ytapiplayer", "499", "281", "9", null, null, params, atts);
function onYouTubePlayerReady(playerId) {
if(playerId == "player1"){
ytplayer = document.getElementById("myytplayer");
ytplayer.cueVideoById("H9v3eky91no");
}else{
if(playerId == "player2"){
ytplayer2 = document.getElementById("myytplayer2");
ytplayer2.cueVideoById("EGnwL0ganu0");
}
}
}
</script>
</div>
<div>
<div id="ytapiplayer2">
You need Flash player 9+ and JavaScript enabled to view this video.
</div>
<script type="text/javascript">
var params = { allowScriptAccess: "always" };
var atts = { id: "myytplayer2" };
swfobject.embedSWF("http://www.youtube.com/apiplayer?enablejsapi=1&version=3&playerapiid=player2","ytapiplayer2", "499", "281", "9", null, null, params, atts);
</script>
</div>
答案 2 :(得分:1)
可能有点晚了,但我正在寻找解决方案,我找到了这个页面。 你的代码现在不起作用,也许它之前没有,但现在没有。 我很沮丧,现在我终于成功了。 这是今天使用chromeless播放器的youtube javascript api的工作代码。
我还添加了一些自定义错误处理 - 如果出现问题,则显示div而不是alert。例。嵌入已禁用或错误的movieID。还有2个播放按钮,因此如果您想在播放前显示预览图像,则可以使用相同的功能。 (很适合幻灯片)。
工作代码2011年7月31日。
<script src="http://www.google.com/jsapi" type="text/javascript"></script>
<script type="text/javascript">
google.load("swfobject", "2.1");
</script>
<script type="text/javascript">
function updateHTML(elmId, value) { document.getElementById(elmId).innerHTML = value;}
function onPlayerError(errorCode) {if (errorCode == 150) { document.getElementById("embed_disabled").style.display = 'block'; }else { if (errorCode == 2) {document.getElementById("notfound").style.display = 'block';}}}
function onYouTubePlayerReady(playerId) {
if (playerId == "player1") {
ytplayer = document.getElementById("ytPlayer");
ytplayer.addEventListener("onError", "onPlayerError");
}
else if (playerId == "player2") {
ytplayer2 = document.getElementById("ytPlayer2");
ytplayer2.addEventListener("onError", "onPlayerError");
}
}
function playVideo16() { if (ytplayer) {ytplayer.playVideo();}}
function pauseVideo16() { if (ytplayer) { ytplayer.pauseVideo(); } }
function playVideo17() { if (ytplayer2) { ytplayer2.playVideo(); } }
function pauseVideo17() { if (ytplayer2) { ytplayer2.pauseVideo(); } }
function loadPlayer() {
var params = { allowScriptAccess: "always" };
var atts = { id: "ytPlayer" };
swfobject.embedSWF("http://www.youtube.com/apiplayer?video_id=4PspF_GA-9U&version=3&enablejsapi=1&playerapiid=player1&showinfo=0&controls=0&iv_load_policy=3&modestbranding=1&rel=0", "videoDiv", "480", "295", "10", null, null, params, atts);
var params = { allowScriptAccess: "always" };
var atts = { id: "ytPlayer2" };
swfobject.embedSWF("http://www.youtube.com/apiplayer?video_id=G68fHZig9nA&version=3&enablejsapi=1&playerapiid=player2&showinfo=0&controls=0&iv_load_policy=3&modestbranding=1&rel=0", "videoDiv2", "480", "295", "10", null, null, params, atts);
}
function _run() { loadPlayer();}
google.setOnLoadCallback(_run);
</script>
<div id="embed_disabled" style="color:#fff;position:absolute;background:#000;width:959px;height:5500px;z-index:100000;display:none">Embed disabled</div>
<div id="notfound" style="color:#fff;position:absolute;background:#000;width:959px;height:5500px;z-index:100000;display:none">Movie not found</div>
<div id="preview_videoDiv" onclick="this.style.display='none';playVideo16()" style="cursor:pointer;color:#fff;position:absolute;background:#000;width:480px;height:295px;z-index:100000;text-align:center;"><p style="padding-top:100px">Start movie</p></div>
<div id="videoDiv">Loading...</div>
<div style="clear:both;"><a href="javascript:void(0);" onclick="playVideo16();">Play</a> | <a href="javascript:void(0);" onclick="pauseVideo16();">Pause</a></div>
<div id="preview_videoDiv2" onclick="this.style.display='none';playVideo17()" style="cursor:pointer;color:#fff;position:absolute;background:#000;width:480px;height:295px;z-index:100000;text-align:center;"><p style="padding-top:100px">Start movie</p></div>
<div id="videoDiv2" style="clear:both;">Loading...</div>
<div style="clear:both;"><a href="javascript:void(0);" onclick="playVideo17();">Play</a> | <a href="javascript:void(0);" onclick="pauseVideo17();">Pause</a></div>