首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JQuery .each()和$.each阵列问题

JQuery .each()和$.each阵列问题
EN

Stack Overflow用户
提问于 2013-09-23 17:05:12
回答 1查看 249关注 0票数 1

我是jquery和javascript的新手,如果这个问题看起来很愚蠢,我很抱歉。

我尝试在几个div中加载相应文件夹的内容(图像),以创建一个图库。

代码语言:javascript
复制
<div id="menu">
<div class="gallery" id="div0">ok0</div>
<div class="gallery" id="div1">ok1</div>
<div class="gallery" id="div2">ok2</div>
<div class="gallery" id="div3">ok3</div>
<div class="gallery" id="div4">ok4</div>
<div class="gallery" id="div5">ok5</div>        
</div>

<script>
var $container = $("#menu div.gallery");    
  $container.each(function(){
    var $n = $(this).attr('id');
    tl = 0;

    var img = ["0001","0002","0003","0004","0005","0006","0007","0008","0009"];
    $.each(img,function (i, v) {
    $container.append('<div class="gallery_img" style="top:' + tl + 'px; left:' + tl + 'px; background-image:url(imgsmall/'+ $n +'/'+ v +'.jpg);"></div>');
      tl += 8;});           
});

$container.width(tl + 200).height(tl + 200).find("div").mouseover(
    function () {
    $(this).topZIndex();
    }
);  
</script>

每个div id都与文件夹的名称相对应,但是由于$container.each()函数和$.each()函数的原因,我找不到上传good目录中good文件夹内容的方法。通过这种方式,它可以上传每个div中所有文件夹的内容。

另外,如何替换此数组

代码语言:javascript
复制
  var img = ["0001","0002","0003","0004","0005","0006","0007","0008","0009"];

干净利落的东西?

EN

回答 1

Stack Overflow用户

发布于 2013-09-23 17:21:45

以这种方式上传每个div中的所有文件

这是因为对于每个<div>,您都要遍历所有图像以将它们附加到DOM中。

如果<div>和图像的顺序相同,您可以执行以下操作:

代码语言:javascript
复制
var img = ["0001","0002","0003","0004","0005","0006","0007","0008","0009"];
$container.each(function(index, el){
    var $n = el.attr('id');
    tl = 0;

    var currentImg = img.splice(index, 1);

    el.append('<div class="gallery_img" style="top:' + tl + 'px; left:' + tl + 'px; background-image:url(imgsmall/'+ $n +'/'+ currentImg +'.jpg);"></div>');

      tl += 8;           
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18955444

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档