1

画像の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/

4

2 に答える 2

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>");
 });

フィドル

于 2012-08-17T00:40:13.023 に答える
1

あなたは上に行き、.closest('.field-item')そしてあなたのテキストを追加する必要があります。

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

于 2012-08-17T00:41:34.297 に答える