Я работаю над гаджетом для сайта Blogger. Я хочу получить название, ссылку и первое изображение из первых четырех сообщений с определенным тегом в фиде сайта (Atom) с помощью Javascript. До сих пор у меня есть заголовок и ссылка, входящие в эти сообщения, отображаемые с помощью HTML в гаджете. Вот код:Извлечение источника изображения из фида Atom с использованием Javascript
<?xml version="1.0" encoding="UTF-8" ?>
<Module>
<ModulePrefs title="Retrieve Featured Blog Posts" height="150" author="John Behan" />
<Content type="html">
<![CDATA[
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("feeds", "1");
</script>
<script type="text/javascript">
function initialize() {
var feed = new google.feeds.Feed("http://test-ohomind.blogspot.com/feeds/posts/default/-/featured");
feed.load(function(result) {
if (!result.error) {
var container = document.getElementById("feed");
for (var i = 0; i < result.feed.entries.length; i++) {
var entry = result.feed.entries[i];
var myElement = document.createElement('div');
var content = entry.content;
myElement.innerHtml = content;
var imagesrc = myElement.getElementsByTagName("img")[0].src;
var mydiv = document.getElementById("mydiv");
var newcontent = document.createElement('p');
newcontent.innerHTML = '<a href="' + entry.link + '">' + entry.title + '</a><br />' + imagesrc;
while (newcontent.firstChild) {
mydiv.appendChild(newcontent.firstChild);
}
}
}
});
}
window.onload = initialize();
</script>
<body>
<div id="mydiv">
</div>
</body>
]]>
</Content>
</Module>
Приведенный выше код дает пустой гаджет и сообщает Firebug, что
myElement.getElementsByTagName ("IMG") [0] не определено
Я я попробовал изменить его немного:
var imagesrc = myElement.getElementsByTagName("img");
дает это в гаджетах
[объект NodeList]
Может кто-то показать мне, что я делаю неправильно, пожалуйста? Мне просто нужно получить источник (src) первого изображения. Остальные гаджеты, которые я могу сделать, но этот маленький кусочек проблемы, я полностью разочарован на этом этапе.
Заранее спасибо.
Привет, Я попробовал и получить такой же результат. Если я просто использую строку var imagesrc = myElement.getElementsByTagName ("img"); гаджет возвращает название плюс ссылку, а затем [object NodeList]. Если я удалю код для изображения, я получу заголовок и ссылку. –