JS For-Loop克隆次数过多

时间:2017-06-14 15:30:16

标签: javascript html css getelementbyid

编辑:(我发现之前在评论中讨论过的问题)

我的代码如下:

<script type="text/javascript">
        for(var i=0; i<5; i++){
            $(".image-wrap").clone().appendTo(".container").attr('id', ("reason" + i));
        }

</script>

出于某种原因,当我使用这种方法时,我得到了一个带有“图像包装”类和预期ID为“reason0”的div,但是后来有两个“图像包装”实例和“reason1”然后是四个带有“reason2”的“图像包装”实例,依此类推。我的循环出了什么问题?

1 个答案:

答案 0 :(得分:0)

there are two instances of "image-wrap" with "reason1" and then four instances of "image-wrap" with "reason2," and so on and so forth

是因为您使用了$(".image-wrap").clone()。实际上,该脚本的目标是“图像包装”类的每个实例。

因此,如果您只需要克隆.image-wrap的第一个实例,那么您可以使用:first伪选择器。请参阅下面的更新脚本..

$(".image-wrap:first").clone().appendTo(".container").attr('‌​id', ("reason" + i));

详细了解:first伪选择器here