1

サイトのモバイル版を作成しようとしていますが、jplayer の機能はメイン サイトの機能によく似ています。プレイリストは現在のページに応じて更新され、現在聴いている曲を除くすべての曲がプレイリストから削除され、ページは表示中のページから曲を動的に追加します。

私のメインページでは正常に動作しますが、モバイル版 (ほぼ同じコード) では動作しません。

jplayerのドキュメントが示唆するように設定jplayer_playlist.option("removeTime", 0);しましたが、うまくいきません。ここに私のコードの一部を示しますので、私が何をしているかを正確に見ることができます。

    function reload()
    {
        var current = jplayer_playlist.current;

        for(var i = 0; i < current; i++)
        {
            deleteSong(0);
        }
        var length = theTitles.length;
        for(var i = 0; i < (length - 1); i++)
        {
            deleteSong(1);
        }
    }

    function deleteSong(index)
    {
        if(!jplayer_playlist.remove(index))
        {
            console.log("Could not delete it.");
        }
    }

最初の削除ではエラー メッセージは表示されませんが、2 回目 (およびその後のすべての削除) では表示されます。removeTimeを 0 に設定したにもかかわらず (および削除呼び出しが行われる前に) 、 を 0 に設定したことを認識していないようです。removeTime以外にjplayer.remove関数から何かを削除しようとしているときに依存するものは他にありますか?

4

2 に答える 2

1

私は同じ問題を抱えていて、jPlaylist ドキュメントで答えを見つけました: http://jplayer.org/latest/demo-02-jPlayerPlaylist/

「2 番目のコマンドは、削除アニメーション時間 removeTime がゼロの場合にのみ機能するためです。」

私の場合、次の機能をコーディングして、現在の曲までのすべての曲を消去しました。

jPlaylist を作成する場合:

var playlistOptions = {
playlistOptions: {
    enableRemoveControls: true,
    autoPlay: false,
    removeTime: 0
},
...
};
playlist = new jPlayerPlaylist(.......);

そして、曲を消去する機能:

function deleteUpToCurrent(e) {
    while(playlist.current != 0) {
        playlist.remove(0); 
    }
    return false;
}

それが役に立てば幸い!乾杯

于 2016-12-05T14:11:02.040 に答える