3

私はいくつかのことを行っている配列を持っていますが、今はそれを「ページ」間で分割しようとしています(実際にはスライドに似ています)。

メソッドを使用してループし、.each()この長いコードを呼び出して情報を適切なページに配置します (現時点では、少なくとも 1 ページあたり 5 項目のみです)。

このコードを単純化する方法はありますか?

理想的には無限に続くことができます:

if (index > 0 && index <= 5) {
    var page = $('#librarian-page-gallery-1');
} else if (index > 5 && index <= 10) {
    var page = $('#librarian-page-gallery-2');
} else if (index > 10 && index <= 15) {
    var page = $('#librarian-page-gallery-3');
} else if (index > 15 && index <= 20) {
    var page = $('#librarian-page-gallery-4');
} else if (index > 20 && index <= 25) {
    var page = $('#librarian-page-gallery-5');
} else if (index > 25 && index <= 30) {
    var page = $('#librarian-page-gallery-6');
} else if (index > 30 && index <= 35) {
    var page = $('#librarian-page-gallery-7');
} else if (index > 35 && index <= 40) {
    var page = $('#librarian-page-gallery-8');
} else if (index > 45 && index <= 50) {
    var page = $('#librarian-page-gallery-9');
}
4

1 に答える 1

5

例えば ​​:

var page = $('#librarian-page-gallery-' + Math.ceil(index/5));

説明 :

   index/5 builds a float number :
         1 -> 0.2
         4 -> 0.8
         5 -> 1
         6 -> 1.2

   and Math.ceil returns the nearest greater or equal integer :
         0.2 -> 1
         0.8 -> 1
         1   -> 1
         1.2 -> 2
于 2013-01-30T09:00:42.017 に答える