对于每个div加载图像加载图像编号两次

时间:2014-02-13 12:50:48

标签: javascript jquery html css foreach

我正在动态加载网格中的图像,网格显示带有某个灯箱链接的图像。这是我目前正在这样做的方式:

$(".selection_thumb").each( function(i) {
    $(this).append("<a data-lightbox='image-1' href='img/folder/folder/"+(++i)+".jpg'><img src='img/folder/"+(++i)+".jpg' alt='alttext' /></a>");  
});

但似乎正在加载这个:

<a data-lightbox="image-1" href="img/folder/folder/1.jpg"><img src="img/folder/2.jpg" alt="alttext" /></a>

但它必须是:

<a data-lightbox="image-1" href="img/folder/folder/1.jpg"><img src="img/folder/1.jpg" alt="alttext" /></a>

所以加载不同的数字1和2而不是1和1。

感谢任何帮助

2 个答案:

答案 0 :(得分:2)

您需要使用i++而不是++i,因为++我会不同地添加

  

++ i在递增后返回i的值。 i ++在递增之前返回i的值。

引自What's the difference between ++i and i++ in JavaScript

答案 1 :(得分:1)

尝试,

var cache = null;

$(".selection_thumb").each( function(i) {
    cache = ++i; 
    $(this).append("<a data-lightbox='image-1' href='img/folder/folder/"+ cache +".jpg'><img src='img/folder/"+ cache  +".jpg' alt='alttext' /></a>");  
});