0
 var audioElm3 = document.getElementById('player');
        if (audioElm3.currentTime === "115") {
            document.getElementById('coverBirds').play();
            console.log("firing");
        };

そのため、'player' サウンドの実行中に特定の時点でサウンド「coverBirds」を再生することを意図しています。問題は、ページを読み込んでも何も起こらず、奇妙なことにコンソールにも何も表示されないことです。これらは両方とも HTML5 オーディオ要素です。それが十分に説明されていることを願っていますか?

4

1 に答える 1

0

document.getElementById('player')JavaScript をの timeupdate イベントに接続する必要があります

document.getElementById('player').ontimeupdate = function(){
//CODE GOES HERE
}

このイベントは、currentTime によって示される時間が変わるたびに発生し、必要な 115 秒と比較してから、coverBirds オーディオ要素を発生させることができます。currentTimeほとんどの場合、適切なラウンド数が返されないことに注意してください。 currentTime の出力をコンソールに記録する例は次のとおりです。

ログ: 0
ログ: 0.23746030032634735
ログ: 0.4874148964881897
ログ: 0.7374603152275085
ログ: 0.9872788786888123
ログ: 1.2373242378234863
ログ: 1.2836746

それに応じて if ステートメントのロジックを調整して、currentTime から受け取った値を丸めるか、範囲内で再生を開始する範囲を指定する必要があります。

timeupdate イベント @ MDN

于 2013-02-12T14:19:49.237 に答える