我无法使用Google Feed API加载图片,我正在使用mediaGroup加载图片。
这是我为提取Feed而编写的javascript代码
<script type="text/javascript">
google.load("feeds", "1");
function initialize()
{
var feed = new google.feeds.Feed("http://techzei.com/feed");
feed.setNumEntries(14);
feed.load(function (result) {
if (!result.error)
{
result.feed.entries.forEach(function(entry)
{
$('#feed').append('<div class="card"><a href="' + entry.link + '">' + entry.title + '</a><p>' + entry.contentSnippet + '</p><br><p>'+entry.publishedDate+'"<img src="'+ entry.mediaGroups+'"/></div>');
});
}
});
}
google.setOnLoadCallback(initialize);
html
<article id="feed"></article>
我现在得到的所有图像都是“未定义的”。我应该做别的吗? Google Feed API dev对此
没有太多启发答案 0 :(得分:2)
该Feed似乎没有任何mediaGroup
条目,这就是您在结果中未定义的原因,但您可以使用jQuery从entry.content
中提取图像。
将图片网址放入数组并显示第一个找到的图片(或无图片):
var content = document.createElement("content");
content.innerHTML = entry.content;
var images = $(content).find('img').map(function(){
return $(this).attr('src')
}).get();
$('#feed').append('<div class="card"><a href="' + entry.link + '">' +
entry.title + '</a><p>' + entry.contentSnippet + '</p><br><p>'+
entry.publishedDate +'</p>' +
(images.length == 0 ? '' :'<img src="'+ images[0] +'"/>') + '</div>');
通过将img标签附加到变量来显示所有图像:
var content = document.createElement("content");
content.innerHTML = entry.content;
var images = "";
$(content).find('img').each(function() {
images += this.outerHTML;
});
$('#feed').append('<div class="card"><a href="' + entry.link + '">' +
entry.title + '</a><p>' + entry.contentSnippet + '</p><br><p>' +
entry.publishedDate + '</p>' + images +'</div>');