У меня есть объект:
var $neutrals = [
{label : "Neutrals 1", value : "#ffffff", type : "color"},
{label : "Neutrals 2", value : "#f8f8f8", type : "color"},
{label : "Neutrals 3", value : "#d9d9d9", type : "color"},
{label : "Neutrals 4", value : "#b2b3b7", type : "color"},
{label : "Neutrals 5", value : "#5b5e65", type : "color"},
{label : "Neutrals 6", value : "#151618", type : "color"}
];
В этом объекте я собираюсь пройтись по каждому элементу, чтобы затем сравнить каждый цвет друг с другом, чтобы убедиться, что эта пара проходит определенный уровень яркости.Вот мой код:
function create_colors(){
var neutral_set = $("<div/>").addClass("color-set");
$(".color-container").html(neutral_set);
neutral_set.append("<h3>Neutrals</h3>");
$.each($neutrals, function(){
var parent_color = this.value;
var colorstrip = $("<div/>").addClass("color-strip").attr("style", "background-color:"+parent_color+";");
neutral_set.append(colorstrip);
$.each($neutrals, function(){
var overlay = hexToRgb(this.value);
var base = hexToRgb(parent_color)
var diff_contrast = contrast(base, overlay);
console.log(this.value+", "+parent_color);
if(diff_contrast > 4.5)
{
colorstrip.append("<span style='color:"+this.value+"'>"+this.label+", "+diff_contrast+"</span>");
return false;
}
})
});
}
Вывод выглядит так: ![enter image description here](https://i.stack.imgur.com/9QFiY.png)
Это близко к тому, что я ожидал, где все светлеецвета показывают самый низкий, чтобы пройти контрастность 4,5: 1, в то время как темный серый и черный цвета пусты, не показывая, по моему опыту, белый #ffffff
.Это то, что я останавливаю цикл с возвратом false, что мешает циклу продолжить?Я не совсем уверен, что я здесь не так сделал.