我被困了......再一次。 我需要使用javaScript在每5个增量后添加一个换行符。例如
img1 img2 img3 img4 img5
img6 img7 img8 img9 img10
这就是我的想法。
for (i = 0; i < blah.length; i++) {
imgholder.innerHTML += i;
if (i > 5) {
imgholder.innerHTML += '<br>';
}
}
好的,我确实意识到它不是最结构化的代码(所以我很抱歉),但它只是一个示例。
希望它有意义。随意提出更多问题以便澄清
干杯,
萨姆
答案 0 :(得分:9)
这将在元素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
之后,标有*
)。
答案 1 :(得分:4)
这是技术含量低,但它会:
if(i % 5 == 4) {
imgholder.innerHTML+='<br>';
}
答案 2 :(得分:0)
您可以在if检查中使用'模数'运算符%
代替大于>
。
for(i=0;i<blah.length;i++) {
imgholder.innerHTML+=i;
if(0 == ((i+1)%5)) {
imgholder.innerHTML+='<br>';
}
}
答案 3 :(得分:0)
您正在寻找模数运算符
for(i=0;i<blah.length;i++){
if((i+1) % 5 == 0){
your br goes here
}
}