SoundCloud プレーヤーにはデフォルトの機能があり、ユーザーがプレーヤーを開始すると、現在再生中の他のすべてのプレーヤーが自動的に一時停止されます。(例: http://jsfiddle.net/Vx6hM/ )。
通常の埋め込みコードを介して動的に追加される埋め込み youtube ビデオでこれを再作成しようとしています。
これを使用: https://stackoverflow.com/a/7513356/938089 およびこれ: https://stackoverflow.com/a/7988536/1470827
私はこれまでに得ることができます:
function chain(){
$('.post').each(function(){
var player_id = $(this).children('iframe').attr("id");
var other_player_id = $(this).siblings().children('iframe').attr("id");
player = new YT.Player( player_id, {
events:
{
'onStateChange': function (event)
{
if (event.data == YT.PlayerState.PLAYING)
{ callPlayer( other_player_id , 'pauseVideo' );
alert('Trying to pause: ' + other_player_id);
}
}
}
});
});
}
これは、半分動作している JS Bin です: http://jsbin.com/oxoyes/2/edit
現在、プレイヤーの 1 人だけを呼び出しています。再生中のプレーヤーを除くすべてのプレーヤーを一時停止する必要があります。
また、これをクリーンアップする方法や、別の方法やより良い方法についてのヒントも大歓迎です。私はまだjavascriptに慣れていないので、正しい方法で行っているかどうかさえわかりません。
ありがとう!