2012-08-17 33 views
1

我有一个小脚本,拍摄图像的ALT标签的将其添加为文本这样:Jquery-抓取图像的ALT标签内容,并添加文本(获得重复)

$(".field-item a img").each(function(i, ele) { 
      $(".field-item").append("<span>"+$(ele).attr("alt")+"</span>"); 
     });​ 

我遇到的问题是我在重复每一个ALT标签添加到每个图像作为文本。因此,对于“image-1”,image-1image-2将作为文本添加,我只希望将相应的alt标记添加为文本。

我累了使用.closest()例如

$(".field-item").closest().append("<span>"+$(ele).attr("alt")+"</span>"); 

......但这似乎并没有伎俩。我有小提琴这里:

http://jsfiddle.net/6pAZE/4/

+0

以下是我想解决这个问题,虽然有几种解决方案:http://jsfiddle.net/6pAZE/9/。另外,“alt标签”:P – powerbuoy 2012-08-17 00:49:45

回答

3

可以使用closest()方法,您目前选择在每次迭代中所有类的field-item元素,请尝试以下操作:

$(".field-item a img").each(function(i, ele) { 
    var alt = this.alt; 
    $(this).closest(".field-item").append("<span>"+alt+"</span>"); 
    // or $(this).after("<span>"+alt+"</span>"); 
}); 

Fiddle

相关问题