gpt4 book ai didi

javascript - 项目未添加到数组中?

转载 作者:行者123 更新时间:2023-12-02 16:44:29 25 4
gpt4 key购买 nike

所以这应该非常简单,但我不知道出了什么问题。

    var imageColors = [];

$('.portfolio-image').each(function(index, el) {
RGBaster.colors(this, {
success: function(payload) {
console.log(payload.dominant);
imageColors.push(payload.dominant);
}
});
});

$('.portfolio-title').each(function(index, el) {
$(this).css('color', 'imageColors[index]');
});

});

所以上面的代码有一个数组,它应该存储一组图像中的颜色。然后,我们循环浏览一些文本,并将文本颜色按照每个图像可见的顺序设置为主色。

无论如何,问题是无论我如何向 imageColors 数组“添加”某些内容,其中都没有任何内容。当我运行数组长度的 console.log 时,它始终为 0。那么有人可以解释为什么没有添加任何内容吗?

最佳答案

由于您有一个 success 回调传递给 colors 插件,它看起来像一个异步方法,这意味着当第二个每个 block 执行时,数组可能不会被填充所需的数据。

这里的一个解决方案是在回调中设置颜色CSS,例如

var imageColors = [];
var $titles = $('.portfolio-title');
$('.portfolio-image').each(function (index, el) {
RGBaster.colors(this, {
success: function (payload) {
imageColors.push(payload.dominant);
$titles.eq(index).css('color', payload.dominant);
}
});
});

关于javascript - 项目未添加到数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27221712/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com