【发布时间】:2014-10-21 10:32:20
【问题描述】:
我需要保存我网站页面中元素的所有颜色值,并放入数据库中。我以为我会这样做:
首先我要获取每个元素的rgb值
$("*").each(function(e){
createColorArray($(this).css('backgroundColor'));
});
然后在函数createColorArray中将所有传入的值存储到一个数组中
function createColorArray(rgbColor)
{
//Create rgb array
}
最后从我的数组中删除重复项
function removeDoupe(ar) {
var temp = {};
for (var i = 0; i < ar.length; i++)
temp[ar[i]] = true;
var r = [];
for (var k in temp)
r.push(k);
return r;
}
现在我的问题是, 建议如何创建数组?直接在 $ ("*") 内部还是在我想的专用函数中?我还需要不止一次删除新数组“clean”中的重复项以及 rgb 值,我还会给出该值在原始数组中的次数。 一些示例代码?
【问题讨论】:
-
为什么首先要添加重复项?
-
您可能应该在首先将值添加到数组中之前检查重复项。
-
有点,但在我看来,使用 $ (*) 之外的重复值控制可以提高速度方面的性能
-
使用属性选择器 - var colorArray= $('[background-color]').attr("background-color");
标签: javascript jquery arrays dom