jQuery的数组重复使用图片

jQuery的数组重复使用图片

问题描述:

var imgLink = ['ONYX', 'Bristol_Blue_B_002_10', 'Oakhampton_B_001_10-1', 'Quartet_KitchenCountertop_500x342', 'Eternal-Serena_RS11277_Silestone-Kitchen', 'zodiaq_provence_kitchen_2200x1467-b94f5-1', 'Eternal-Serena_RS11277_Silestone-Kitchen-1', 'Ecobycosentino-', 'Hanstone', 'IceStone-Forest-Fern-Shadowlight-Vignette-Kitchen-Countertop', 'RS833_Silversilk_OA-hpr-copy_CMYK', 'scalea']; 

    var imgArray = []; 

jQuery.each(imgLink, function(i){ 
    var img = jQuery('<img/>') 

    .attr("src", "http://www.link.com/wp-content/uploads/2017/10/" +imgLink[i]+ ".jpg") 
    imgArray.push(img[i]); 
}); 
console.log(imgArray); 

大家好,我有以上代码和我的目标是为与属性的阵列的图像,但结果现在是jQuery的数组重复使用图片

Results of array

JSFiddle

任何人都可以给我建议我做错了什么,谢谢!

+2

只有第一个作品,因为当我是0,你正在推动DOM节点到数组,'IMG [ 1]'和以后是没有意义的。您应该使用'imgArray.push(img)'来代替。 – Terry

您有一个错字。

imgArray.push(img[i]); 

应该是:

imgArray.push(img); // <-- img is not an array 

var imgLink = ['ONYX', 'Bristol_Blue_B_002_10', 'Oakhampton_B_001_10-1', 'Quartet_KitchenCountertop_500x342', 'Eternal-Serena_RS11277_Silestone-Kitchen', 'zodiaq_provence_kitchen_2200x1467-b94f5-1', 'Eternal-Serena_RS11277_Silestone-Kitchen-1', 'Ecobycosentino-', 'Hanstone', 'IceStone-Forest-Fern-Shadowlight-Vignette-Kitchen-Countertop', 'RS833_Silversilk_OA-hpr-copy_CMYK', 'scalea']; 
 

 
var imgArray = []; 
 

 
jQuery.each(imgLink, function(key, value) { 
 
    var img = jQuery('<img/>').attr("src", "http://www.link.com/wp-content/uploads/2017/10/" + value + ".jpg") 
 

 
    // uncomment below for img 
 
    //imgArray.push(img); 
 

 
    // just html for testing 
 
    imgArray.push(img[0]); 
 
}); 
 
console.log(imgArray);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>