1. ホーム
  2. javascript

[解決済み] Youtube api - 動画を停止する

2022-01-30 18:38:11

質問

Youtube APIと埋め込み動画について教えてほしいのですが。 私はいくつかの要素(div、link、tdなど)がクリックされたときにビデオを停止したい。私は今、1つのビデオにのみ動作するようにしようとしているが、このスクリプトの最終的な機能は、現在のページに読み込まれたすべてのビデオを停止する必要があります。私はYT APIドキュメントを読みましたが、JSの本当に初心者のため、まだ理解するのが難しいです。

<html>
<head>
    <script type="text/javascript" src="swfobject.js"></script>
</head>
<body>

<a href="javascript:ytplayer.stopVideo()">Play</a>
<br/>
<iframe id="ytplayer" src="http://www.youtube.com/embed/8Ax-dAR3ABs?rel=0&iv_load_policy=3&showinfo=0&enablejsapi=1&version=3&playerapiid=ytplayer" type="application/x-shockwave-flash" frameborder="0" allowscriptaccess="always"></iframe>

</body>
</html>

アドバイスがありましたら、よろしくお願いします。

解決方法は?

iframeで埋め込むと制御できない。こんな感じで、オブジェクト埋め込みを使うしかない。

<object id="ytplayer" style="height: 390px; width: 640px">
    <param name="movie" value="http://www.youtube.com/v/8Ax-dAR3ABs?version=3&enablejsapi=1">
    <param name="allowScriptAccess" value="always">
    <embed id="ytplayer" src="http://www.youtube.com/v/8Ax-dAR3ABs?version=3&enablejsapi=1" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="640" height="390">
</object>

と言うように更新する必要があるかもしれませんが、それ以降のコードは概ね動作するはずです。

<a href="javascript:document.getElementById('ytplayer').stopVideo()">Play</a>

また、デモサイトはご覧いただけましたか? http://code.google.com/apis/youtube/youtube_player_demo.html