Это сломается после элемента 6, 7, 8 (начиная с нуля, поэтому добавьте 1, чтобы получить номер изображения) и так далее, так как они все больше 5. Таким образом, вы получите:
img1 img2 img3 img4 img5 img6 img7
img8
img9
img10
Вам необходимо заменить:
if (i > 5) {
на:
if ((i % 5) == 4) {
, чтобы оно разрывалось после элемента 4 (img5), 9 (img10), 14 (img15) и т. Д.
И, поскольку вы запросили объяснение, оператор по модулю дает вам остаток при делении.Таким образом, 12 % 5
может быть обработано как то, что осталось, когда вы поделите 12
на 5
.12 / 5
дает вам 10
с остатком 2
, поэтому 12 % 5
равно 2
.
Может помочь следующая таблица:
i | i % 5
-----+------
0 | 0
1 | 1
2 | 2
3 | 3
4 | 4 *
5 | 0
6 | 1
7 | 2
8 | 3
9 | 4 *
10 | 0
11 | 1
12 | 2
Вы можете видеть этоциклически перебирая значения {0, 1, 2, 3, 4}
, поэтому нам просто нужно выбрать значение, в которое вы хотите вставить разрывы (после 4
, отмеченные *
).