2017-01-20 5 views
0

場合、私は曲のキューを持っていますが、0から表示を開始 - 200あなたは、次のページに行くとき、それは201から始まる - 400次のページ、600から401などラウンド最寄りの200が、-1 200

私はオートスクロール機能を持​​っていますが、現在の曲が再生されているページにジャンプしてから、その曲にスクロールする必要がありますか?だから、もし曲が250ならば、開始点は201でなく、終了点は400で終わらないはずです。しかし、曲が200の場合、開始は0で終わりは200ではありません。最寄りの200には250 260などがありますが、200,400,600など-1の場合は200、-1の場合は199になり、0に丸められます。

おそらくもっと良い解決策がありますか?以下は、とにかく丸めのための私のコードです< - 素晴らしい作品!

コード:

scrolltopage = destination + 1; //number could be 20,201,288 etc 
startpageQueueScroll = parseInt(Math.floor(scrolltopage/200) * 200 + 1); //Start displaying contents at 
endpageQueueScroll = parseInt(Math.floor(scrolltopage/200) * 200 + 201); //Stop displaying at 
console.log("Start: " + startpageQueueScroll + " and end page: " + endpageQueueScroll); //Display Output 

答えて

2

どのようにモジュロ演算子を使用してはどうですか? サンプルコード:

function getNextPages(original){ 
    const nextDestination = original + 1; 
    const nextModulus = nextDestination % 200; 
    if(nextModulus == 0){ 
     return -1; 
    } 
    const nextMinPage = nextDestination - nextModulus + 1; 
    const nextMaxPage = nextMinPage + 200; 
    console.log(nextMinPage); 
    console.log(nextMaxPage); 
} 
+1

モジュラスの結果を変数に設定すると、モビリティの結果がより洗練され、わずかに速くなります。 – krillgar

+1

あなたはそうです!コードを修正しました – Antony

+0

ありがとう!これを打ち明けて報告します。 – irishwill200