泛化代码以处理任意数量的列
Generalizing code to work with any number of columns
如何将以下代码泛化,使其适用于任何数量的颜色?
if (totalColls==4){
$(aclst).eq(0).css({"top":itlh*0+"px", "left":itlwi*0+"px"});
$(aclst).eq(1).css({"top":itlh*0+"px", "left":itlwi*1+"px"});
$(aclst).eq(2).css({"top":itlh*0+"px", "left":itlwi*2+"px"});
$(aclst).eq(3).css({"top":itlh*0+"px", "left":itlwi*3+"px"});
$(aclst).eq(4).css({"top":itlh*1+"px", "left":itlwi*0+"px"});
$(aclst).eq(5).css({"top":itlh*1+"px", "left":itlwi*1+"px"});
$(aclst).eq(6).css({"top":itlh*1+"px", "left":itlwi*2+"px"});
$(aclst).eq(7).css({"top":itlh*1+"px", "left":itlwi*3+"px"});
$(aclst).eq(8).css({"top":itlh*2+"px", "left":itlwi*0+"px"});
$(aclst).eq(9).css({"top":itlh*2+"px", "left":itlwi*1+"px"});
$(aclst).eq(10).css({"top":itlh*2+"px", "left":itlwi*2+"px"});
$(aclst).eq(11).css({"top":itlh*2+"px", "left":itlwi*3+"px"});
}
这应该适用于任何数量的行或列。
- jQuery $(aclst).each()函数迭代所有元素,并为回调函数提供适当的索引和DOM节点。
- 数学。floor(index/totalColls) call返回从0开始的行号。 index % totalColls调用返回列号,从0开始。
下面是迭代所有元素时的样子:
$(aclst).each(function(index, element) {
$(element).css({
"top" : (itlh * Math.floor(index / totalColls)) + "px",
"left": (itlwi * index % totalColls) +"px"
});
});
相关文章:
- javascript处理一个对象数组以获得一个新的对象数组
- call()和apply()实际上是用来欺骗方法处理类似数组的对象的
- 在JavaScript中处理数组和对象时需要帮助
- 处理docXTemplater或javascript对象数组中未定义的值
- Emberjs#每个循环不处理数组数据
- jQuery:如何在没有for循环的情况下将事件处理程序应用于$('#text'+'任意整数
- 如何在angular js/HTML中处理数组
- 处理对象数组并将它们以 4 个为一组进行分配
- AngularJS错误处理:根据错误数组显示错误
- JavaScript-在数组中查找元素,并从用户提示中处理null
- 听任意DOM修改-对DOM进行哈希处理
- 如何处理json编码的php-mysql数组
- 如何在ASP.NET Response.BinaryWrite生成的Javascript中处理字节数组映像
- 按子数组处理数组
- 更改可观察数组会更改自定义绑定处理程序knockoutjs的可见性
- 基于"字符串"的任意数组元素;种子
- Javascript程序不使用数学.用for循环求任意数的幂
- 将变量赋值为这两个数之间的任意数
- 如果希望使用javascript数组作为哈希键,请使用任意数组元素进行检索
- 通过java将任意长度的数组传递给php并在php中处理它