匿名質問者
匿名質問者匿名質問者とは「匿名質問」を利用して質問した質問者。
「匿名質問」では、ユーザー名を公開せずに匿名の質問ができます。
詳しくはこちら

addEventListenerを使って再生が終了したら次の曲がなれるようにしたいです。


ループのさせ方がわかりません…

$("audio")[i].addEventListener('ended', function () {

$("audio")[i++].play();

});
$("audio")[i].play();

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2014/01/12 10:08:46
  • 終了:2014/01/19 10:10:03

ベストアンサー

匿名回答1号 No.1

匿名回答1号「匿名質問」を利用した質問に回答すると「匿名回答○号」と匿名で表示されます。
「匿名質問」では、ユーザー名を公開せずに匿名の質問ができます。
詳しくはこちら
2014/01/13 14:06:10

実装は色々

再帰的、大域変数使用

var i=0;
function playAndNext() {
    $("audio")[i].addEventListener('ended', playAndNext);
    $("audio")[i++].play();
}
playAndNext();

事前登録、クロージャ使用

for (var i=0; i < $("audio").length-1; i++) {
    $("audio")[i].addEventListener('ended', (function (j) {
        return function () {$("audio")[j+1].play();};
    })(i));
}
$("audio")[0].play();

しかし、せっかくのjqueryなので。
あと、最後のエラー処理も入れておきたい。

$("audio").bind('ended', function () {
    var e = $(this).nextAll("audio:first")[0];
    if (e) {e.play();}
    // else {$("audio:first")[0].play();}
});
$("audio:first")[0].play();

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません