var URL= "https://www.youtube.com/watch?v="+videoId
このURLの変数をHTMLに渡すにはどうしたらいいのでしょうか?
↓のように動画をHTMLの中で再生したい
<video controls><source src="ここにURLを渡したい"/></video>
アドバイス頂けたら幸いです。宜しくお願いします。
YouTube のプレーヤーは video タグになりましたけど、src 属性に指定されている URL は videoId じゃないみたいです。
試しに適当なのを拾ってみました。
https://www.youtube.com/watch?v=6NG3mcGZhQo で視聴できる動画では、video タグの src に指定されているのは blob:https://www.youtube.com/ea8b8689-f6b7-4330-96c9-d710b122a8ef でした。
YouTube のプレーヤーを埋め込みたいのであれば、iframe を使います。
例えば、こんな感じ。
<iframe id="youtube-player"></iframe> <script> window.onload = function() { var videoId = ... var url = "https://www.youtube.com/embed/" + videoId; var e = document.getElementById("youtube-player"); e.src = url; } </script>
id 属性で目印を付けた iframe を、document.getElementById で取得して、src 属性に埋め込みプレーヤー用の URL を設定する、というような具合です。
こちらは参考になるでしょうか。ちなみに、<iframe~></iframe>のとこは、Youtubeの[埋め込みコード]のとこから持ってきました。(^_^;
#1の方の書き方のほうがスマートなので、合わせ技で何とかなるんじゃないでしょうか。(^_^;
<html> <head> <title>VideoTest</title> </head> <body> <p>この下に動画</p> <script type='text/javascript'><!-- var videoId = "mJbRzj2hL90"; var URL = "https://www.youtube.com/embed/"+videoId; var Video = '<iframe width="512" height="288" src="'+ URL +'" frameborder="0" allowfullscreen></iframe>'; document.write(Video); //--></script> <p>この上に動画</p> </body> </html>
https://developers.google.com/youtube/iframe_api_reference
ありがとうございました m(_ _)m