Присвойте ID / Класс сгенерированным изображениям - PullRequest
1 голос
/ 12 июля 2010

У меня есть 10 или около того изображений, поступающих с Flickr.На данный момент они просто появляются как изображения без индивидуального идентификатора или имени класса.

Итак, у меня есть:

<img src="images/01.jpg" width="300" height="273" />
<img src="images/01.jpg" width="300" height="273" />
<img src="images/01.jpg" width="300" height="273" />
<img src="images/01.jpg" width="300" height="273" />

... и так далее.То, что я хочу сделать, это иметь:

<img id="image1" src="images/01.jpg" width="300" height="273" />
<img id="image2" src="images/01.jpg" width="300" height="273" />
<img id="image3" src="images/01.jpg" width="300" height="273" />
<img id="image4" src="images/01.jpg" width="300" height="273" />

Но так как они вводятся через jQuery, а не вручную, я не уверен, как добавить эти идентификаторы по порядку к изображениям.Каждый из них должен быть оформлен по-разному.

Есть идеи?

Ответы [ 3 ]

5 голосов
/ 12 июля 2010

используйте функцию обратного вызова вашего ajax ...

, если у вас есть что-то подобное,

$.getJSON("http://api.flickr.com/services/feeds/photos_public.gne?tags=cat&tagmode=any&format=json&jsoncallback=?", function (data) {
    $.each(data.items, function (i, item) {
        $("<img/>").attr({"src":item.media.m, 'id': 'images' + i}).appendTo("#images");
    });
});
2 голосов
/ 12 июля 2010

Вы можете использовать:

jqueryEl.attr("id", "someId");

или:

jqueryEl.addClass("newClass")

, где jQueryEl - обернутый элемент.Или, если у вас есть набор изображений, вам может быть полезен параметр функции attr:

jquerySet.attr("id", function(index)
                     {
                       return "image" + (index + 1);
                     });

На самом деле это похоже на пример в attr docs .

0 голосов
/ 12 июля 2010

Если вы хотите опубликовать код, извлекающий изображения, его, возможно, лучше интегрировать туда.Тем не менее, вы также можете просто добавить этот код после добавления изображений.Давайте представим, что изображения добавляются в div с идентификатором flickr:

$("#flickr img").each(function (i, image){
  image.id = "image" + (i + 1);
});

Вот и все!Теперь каждое изображение будет иметь image1, image2 и т. Д. Как id в порядке.

...