7

HTML5 ビデオ プレーヤーのキュー ポイントが必要です。これはキャプションなどのためだけのものであることを除いて、Cuepoint.jsを見つけました。キュー ポイントにヒットしたときに変更するテキスト以外のものが必要です。

独自のキュー ポイント ロジックを作成しましたが、効率的ではないと感じています。私は今、大したことではない小さな配列を扱っています。数百に達すると、パフォーマンスの問題が発生する可能性があるのではないかと心配しています。

これは私が思いついたものであり、非常に正確です:

function timeUpdate(event)
{
    var times = [3,8,13,19,25];
    currentTime = player.currentTime();
    $.each(times,function(key, value)
    {
        if (currentTime >= times[key] && currentTime <= times[key] + 0.3)
        {
            currentIndex++;
            loadAssets(currentIndex);
        }   
    });
}

配列はtimes単なる例です。これを行うためのより効率的な方法はありますか、それともほとんどそれですか?

4

1 に答える 1

1

Ronnie、その配列をループする必要はありません。アイテムが順番に並んでいる場合は、最初のアイテムと照合してから、currentIndex を 1 つ上げます。

function timeUpdate(event)
{
    var times = [3,8,13,19,25];
    currentTime = player.currentTime();

    if (currentTime >= times[currentIndex])
    {
        currentIndex++;
        loadAssets(currentIndex);
    }   
}
于 2015-08-12T23:52:39.223 に答える