javascript - 在大量 div 中插入图像源(最好的方法)

标签 javascript jquery html

所以我用 html 和 css 制作了一个机架:

<div id="achterkant">
  <div class="rack">
    <div class="rackRow">
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
    </div>
    <div class="rackRow">
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
    </div>
    <div class="rackRow">
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
    </div>
    <div class="rackRow">
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
    </div>
    <div class="rackRow">
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
    </div>
    <div class="rackRow">
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
      <div class="rackSlot"></div>
    </div>
  </div>
</div>

在所有这些rackSlots 中,都需要有一个我从API 获取的图像(只是一个链接)。我把这些放在一个数组中。有没有一种方法可以将图像插入到带有类rackslot的第一个div中,其中没有图像? 我认为我应该这样做:

   for (i = 0; i < 36; i++){
       $('first rack slot with no images').prepend('<img src="'myarrayofimages[i]'"/>');
   }

最佳答案

首先,请注意您的字符串连接有缺陷 - 您缺少用于连接值的 +

要实现您的要求,您可以使用 :empty:first 来选择所需的 .rackSlot 元素:

for (i = 0; i < 36; i++){
  $('.rackSlot:empty:first').prepend('<img src="' + myarrayofimages[i] + '"/>');
}

如果您想让它更精确一点,您可以显式检查它是否不包含 img 元素:

for (i = 0; i < 36; i++){
  $('.rackSlot:not(:has(img)):first').prepend('<img src="' + myarrayofimages[i] + '"/>');
}

关于javascript - 在大量 div 中插入图像源(最好的方法),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43650966/

相关文章:

jquery - 默认情况下让 Facebook "Send"按钮打开对话框

html - 在图像之间切换以避免 "jumping"行为

javascript - HTML 选择 "Selected"属性不起作用

javascript - 使用 Javascript 将循环添加到 HTML5 音频

javascript - 在光滑的轮播中假装点击下一张幻灯片

javascript - 在 Bootstrap 3.0 中从下拉菜单中切换元素

javascript - MongoDB 聚合不返回具有相同值的对象

javascript - 如何在范围内显示数组的元素?在javascript中

javascript - 如何让 js 插件在发布时支持 ASP.NET javascript 优化

javascript - 获取点击时行的 id