プロが教えるわが家の防犯対策術!

youtube連続再生方法
youtube動画を2つhtml内に表示します。
「1つ目の動画が終わったら、2つ目の動画を再生し、更に2つ目の動画が終了したら、
1つ目の動画を再生する」
ということをしたいのですが、できますでしょうか?

A 回答 (4件)

2つプレーヤーを作って、交互に切り替えを行うパターンもやってみました。


こっちの方がスムーズです。
<body>
<div id="ytapiplayer1"></div>
<div id="ytapiplayer2"></div>
<script type="text/javascript" charset="utf-8">
swfobject.addLoadEvent(function(){
play_url=["http://www.youtube.com/v/IQUtXsIuBAU?f=videos&ap …
"http://www.youtube.com/v/nuJHenDGUa8?f=videos&ap …];
swfobject.embedSWF(play_url[0]+'&rel=0&autoplay=0&disablekb=1&egm=1'+
'&enablejsapi=1&playerapiid=ytplayer1',"ytapiplayer1",
"250", "200", "8", null, null,
{allowScriptAccess:"always"},{id:"ytapiplayer1"});
swfobject.embedSWF(play_url[1]+'&rel=0&autoplay=0&disablekb=1&egm=1'+
'&enablejsapi=1&playerapiid=ytplayer2',"ytapiplayer2",
"250", "200", "8", null, null,
{allowScriptAccess:"always"},{id:"ytapiplayer2"});
});
function onYouTubePlayerReady(playerID){
if( playerID == "ytplayer1" ){
ytplayer1 = document.getElementById("ytapiplayer1");
}
if( playerID == "ytplayer2" ){
ytplayer2 = document.getElementById("ytapiplayer2" );
}
ytplayer1.addEventListener("onStateChange","on_ytplayer1_StateChange");
ytplayer2.addEventListener("onStateChange","on_ytplayer2_StateChange");
}
function on_ytplayer1_StateChange(state){
if (state==5){
ytplayer2.style.visibility = "hidden";
ytplayer1.style.visibility = "visible";
ytplayer1.playVideo();
}
if (state==0){
ytplayer2.style.visibility = "visible";
ytplayer1.style.visibility = "hidden";
ytplayer2.playVideo();
}
}
function on_ytplayer2_StateChange(state){
if (state==0){
ytplayer2.style.visibility = "hidden";
ytplayer1.style.visibility = "visible";
ytplayer1.playVideo();
}
}
</script>
</body>

この回答への補足

yyr446様

ご返答ありがとうございます。
高度なPGありがたいのですが、コピペしたところ、何も表示されないのですが、なぜ?

補足日時:2010/04/27 00:35
    • good
    • 0

永遠に2つの動画を再生し続けるサンプルです。


とりあえず「Google Player APIs(実体はSWFObject2.0)」利用です。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ja-JP">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<script>
google.load("swfobject", "2.1");
</script>
</head>
<body>
<div id="contener">
<div id="ytapiplayer"></div>
</div>
<script type="text/javascript" charset="utf-8">
<!--
swfobject.addLoadEvent(function(){
play_url=["http://www.youtube.com/v/IQUtXsIuBAU?f=videos&ap …
"http://www.youtube.com/v/nuJHenDGUa8?f=videos&ap …];
creatSWF();
});
function onYouTubePlayerReady(){
var ytplayer = document.getElementById("ytplayer");
ytplayer.addEventListener("onStateChange","on_ytplayer_StateChange");
}
function on_ytplayer_StateChange(state){
if (state==0){
swfobject.removeSWF('ytplayer');
var s = play_url.shift();
play_url.push(s);
creatSWF();
}
}
function creatSWF(){
var player = document.getElementById("ytapiplayer");
if(!player){
var div = document.createElement("div");
div.setAttribute("id", "ytapiplayer");
document.getElementById("contener").appendChild(div);
}
swfobject.embedSWF(play_url[0]+'&rel=0&autoplay=1&disablekb=1&egm=1'+
'&enablejsapi=1&playerapiid=ytplayer',"ytapiplayer",
"250", "200", "8", null, null,
{allowScriptAccess:"always"},{id:"ytplayer"});
}
// -->
</script>
</body>
</html>
    • good
    • 0

技術的には、難しくありませんが、2つの動画再生が強制的に繰り返されて、


止める事が出来ないページなんて、アクセスしたくないですね。
めだたない小さな動画なら許されますが....。
エロサイトの釣りでよく見かけるパターンです。
    • good
    • 0

どうやら、出来そうですね。



YouTube の API とツール - Google Code
http://code.google.com/intl/ja-JP/apis/youtube/o …
YouTube JavaScript Player API リファレンス - YouTube の API とツール - Google Code
http://code.google.com/intl/ja-JP/apis/youtube/j …
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!