我正在使用Feed阅读器解析Google News Feed。 (的 Fiddle )。我无法从描述中删除标题和来源。我认为真正的内容是在这一串标签</font></b></font><br /><font size=\"-1\">
之后。
使用.after
是否不正确,如var text =$(findImg).after('</font></b></font><br /><font size=\"-1\">').text().substr(0,200)+'...';
?
此外,对于不包含图像的项目,如何防止添加标记?谢谢。
$('#rssdata').ready(function () {
$.ajax({
url: 'http://query.yahooapis.com/v1/public/yql?q=Select%20*%20from%20rss%20where%20url%3D%22https%3A%2F%2Fnews.google.com%2Fnews%2Ffeeds%3Fq%3Dboring%26output%3Drss%22&format=json&diagnostics=true&callback=?',
dataType: 'json',
success: function (data) {
//console.log(data.feed.entries);
$(data.query.results.item).each(function (index, item) {
var findImg = item.description;
var img = $(findImg).find('img').eq(0).attr('src');
var text =$(findImg).after("</font></b></font><br /><font size=\"-1\">").text().substr(0,200)+'...';
var item_html = '<li><a target="_blank" href="' + item.link + '">' + item.title + '</a><p><img src="' + img +'"/><span>' + text +'</span></li>';
$('#rssdata ul.rss-items').append(item_html);
});
$('#rssdata div.loading').fadeOut();
$('#rssdata ul.rss-items').slideDown();
},
error: function () {}
});
});
答案 0 :(得分:1)
说实话,我认为你做得对。我的意思是你获得描述的方式。我编辑你的小提琴,在没有图像时不显示IMG标签。 http://jsfiddle.net/veritas87/cYFLe/32/
if(typeof img != 'undefined') {
var imgTag = "<img src='" + img + "' />";
}
var text =$(findImg).after("</font></b></font><br /><font size=\"-1\">").text().substr(0,200)+'...';
var item_html = '<li><a target="_blank" href="' + item.link + '">' + item.title + '</a><p>' + imgTag + '<span>' + text +'</span></li>';
如您所见,它检查IMG var是否未定义。当IMG var未定义时,它构造IMG标签。
答案 1 :(得分:1)
请在此处查看修改后的代码(Fiddle)
$('#rssdata').ready(function () {
$.ajax({
url: 'http://query.yahooapis.com/v1/public/yql?q=Select%20*%20from%20rss%20where%20url%3D%22https%3A%2F%2Fnews.google.com%2Fnews%2Ffeeds%3Fq%3Dboring%26output%3Drss%22&format=json&diagnostics=true&callback=?',
dataType: 'json',
success: function (data) {
//console.log(data.feed.entries);
$(data.query.results.item).each(function (index, item) {
var findImg = item.description;
var img = $(findImg).find('img').eq(0).attr('src');
var text = $(findImg).find("div.lh").children("font:nth-of-type(2)").text().substr(0, 150) + '...';
var item_html = '<li><a target="_blank" href="' + item.link + '">' + item.title + '</a><p>';
if (img != undefined && img != null && img != "") {
item_html += '<img src="' + img + '"/>';
}
item_html += '<span>' + text + '</span></p></li>';
$('#rssdata ul.rss-items').append(item_html);
});
$('#rssdata div.loading').fadeOut();
$('#rssdata ul.rss-items').slideDown();
},
error: function () {}
});
});