В основном, работа с XML-каналом, который не написан наилучшим образом (данные API Youtube), и следует за ним от a previous question on the topic.jQuery: Retreving только первый атрибут определенного узла из XML
В настоящее время существует четыре узла в файле с именем media:thumbnail
. Каждый узел media.thumbnail
имеет различные атрибуты, один из которых - url
. Я только хочу получить значение первого вхождения атрибута url
(результатом является http://i.ytimg.com/vi/CQP_AuT4zXQ/2.jpg
).
Пример;
<item>
...
<media:group>
...
<media:thumbnail url='http://i.ytimg.com/vi/CQP_AuT4zXQ/2.jpg' height='90' width='120' time='00:04:53.500'/>
<media:thumbnail url='http://i.ytimg.com/vi/CQP_AuT4zXQ/1.jpg' height='90' width='120' time='00:02:26.750'/>
<media:thumbnail url='http://i.ytimg.com/vi/CQP_AuT4zXQ/3.jpg' height='90' width='120' time='00:07:20.250'/>
<media:thumbnail url='http://i.ytimg.com/vi/CQP_AuT4zXQ/0.jpg' height='240' width='320' time='00:04:53.500'/>
...
</media:group>
...
</item>
Мои знания Jquery все еще развиваются, и я был в состоянии получить значение атрибута url
для всех вхождений media:thumbnail
, используя следующий код:
$(this).find("[nodeName=media:thumbnail]").each(function()
{
$("#output").append("<img src=\"" + $(this).attr("url") + "\">\n");
});
Как сделать сейчас я ограничьте это, чтобы я только захватил значение url
для первого появления media:thumbnail
?
Извините, Пабло, но я просмотрел эту статью и не могу понять, как применить ее к моей ситуации. Как только вы назначили первый экземпляр соответствующего узла переменной, как вы его получите? Является ли '$ (" # output "). Append (" \ n ");' приемлемым или я все еще лаем неправильное дерево? – thewinchester
elt.attr («url») вам не нужно добавлять знак доллара снова, поскольку elt уже является дополненным объектом jQuery. –
Отредактировано рабочим примером, надеюсь, что это поможет –