2017-02-20 7 views
0

私のシナリオ - Codepen(スクロールダウンするのを忘れないでください)ストップ他のビデオ - jQueryとユーチューブAPI

イム私のユーチューブはiframeビデオをlazyloadするlazyframe pluginを使用。各ビデオは、再生ボタンをクリックするとDOMに追加されます。新しいビデオiframeが作成された後にトリガされるonAppend関数が含まれています(作成したペンを見てください)。

新しいvidを起動したら、他のvidを停止するにはどうすればよいですか?

私は、それがうまく動作するかどうかを確認するために警告をonAppend関数に入れました。 onAppend部分が

onAppend: function(e) { 
     alert('onAppend after Lazyframe Function');      
    } 

のように見える私はまた、APIを有効にするには、埋め込みユーチューブのURLの最後に次のスクリプト

<script src="http://www.youtube.com/player_api"></script> 
    <script src="http://www.youtube.com/iframe_api"></script> 

一部を含む管理も

&enablejsapi=1 
をincluldeされます

各Iframeに固有のIDが割り当てられます

<iframe id="lazyframe-6hgVihWjK2c" src="https://www.youtube.com/embed/6hgVihWjK2c/?autoplay=1" allowfullscreen="" class="test-vidx" frameborder="0"></iframe> 

助けていただければ幸いです。

答えて

0

私はあなたが言ったことから、同時に多くの選手があなたのページを読み込んでいると思います。もしそうなら、あなたは彼らがお互いに独立していることを知ります。

このような場合は、一度に1つの再生しかしたくない場合があります。

私が考えることができるのは、現在選択されているプレーヤーのIDを読み込むダイナミック変数を設定することだけです。次に、別のビデオを再生することを選択すると、IDの変数を使用して古いビデオに停止コマンドを送信します。新しい動画プレーヤーIDで変数を更新します。しかし、私はあなたがIDを取得する方法についてはわかりませんが、API呼び出しの埋め込まれたプレイヤーは持っていないようです。

最高のIDを与えることができるスタンドアローンプレーヤーを使用することです。 ここには該当する​​

関連する問題