繁体   English   中英

显示来自Javascript数组的图像

[英]Displaying Images from a Javascript Array

我正在创建一个JS代码段,以在网页上显示叠加层,并且需要抓取图像,将其保存到变量中,然后将它们显示在叠加层上。

我目前在阵列中需要的图像:

var itemImages = $(".itemImg img");
var imageArray = [];
for (i = 0; i < itemImages.length; i++) {
  imageArray.push("<li><img src='" + itemImages[i].src + "'/></li>");
}

图像数组如下所示:

["<li><img src='http://cdnmedia.marmot.com/images/product/tile/75940_9149_f.jpg'/></li>", "<li><img src='http://cdnmedia.marmot.com/images/product/tile/18840_001_f.jpg'/></li>"]

我似乎可以弄清楚如何在我的代码中显示这些内容。 该函数当前如下所示:

function displayModal(itemCount, imageArray, cartTotal) {
  $("<article id='modal'><div id='itemCount'>" + "Total Items: " 
    + itemCount + "<br><div id=itemImages>" + "<div id='images'>" + "IMAGES!" +
    "</div></div></div></article>").css({
    "width": "461px",
    "height": "263px",
    "line-height": "200px",
    "position": "fixed",
    "top": "50%",
    "left": "50%",
    "margin-top": "-155px",
    "margin-left": "-232px",
    "background-color": "rgb(255,255,255)",
    "border-radius": "5px",
    "text-align": "center",
    "z-index": 101,
    "border": "1px solid rgb(227,227,227)",
    "border-top": "4px solid rgb(217,0,31)"
  }).appendTo("#overlay");
  $("#itemCount").css({
    "position": "relative",
    "bottom": "79px",
    "font-family": "Helvetica",
    "color": "#000",
    "font-size": "16px"
  }).appendTo("#modal");
}

我正在使用占位的图像! 用于实际图像。 我似乎无法显示图像本身,仅显示“对象”一词。

我怀疑这是因为您正在引用imageArray数组-这是一个对象-但您想要的是数组中的元素。

您可以以与首次添加它们类似的方式检索数组中的单个项目,例如

    for (i = 0; i < imageArray.length; i++) {
      var image = imageArray[i];
    } 

或者,您可以通过将以下内容添加到displayModal函数的开头来构建所有图像HTML的字符串:

    var imageHTML = "";
    for (i = 0; i < imageArray.length; i++) {
      imageHTML += imageArray[i];
    } 

并将imageHTML代替"IMAGES!"添加到生成的HTML中"IMAGES!"

我在JSFiddle中添加了一个工作示例

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM