Javascript 获取RSS提要附件标记的URL
开发者 我在理解rss提要附件标记时遇到一些问题。。 这里是相关代码:Javascript 获取RSS提要附件标记的URL,javascript,jquery,rss,jfeed,Javascript,Jquery,Rss,Jfeed,开发者 我在理解rss提要附件标记时遇到一些问题。。 这里是相关代码: $(document).ready(function(){ $('#btnHentRss').click(function(){ fyllNyheter(); }); }); function fyllNyheter(){ var url = $('#feedListe').val(); $.getFeed({
$(document).ready(function(){
$('#btnHentRss').click(function(){
fyllNyheter();
});
});
function fyllNyheter(){
var url = $('#feedListe').val();
$.getFeed({
url: "getRSS.php?url=" + url,
success: function(feed){
parseXML(feed);
},
error: function(){
$('#sectId').html("<p>Something went wrong</p>");
},
complete: function(){
}
});
}
function parseXML(feed){
$.each(feed.items, function(i, item){
var tittel = item.title;
var beskrivelse = item.description;
var url= $(item).find("enclosure['url']");
$('#sectId').append("<img src='" + media + "' />");
});
}
$(文档).ready(函数(){
$('#btnHentRss')。单击(函数(){
fyllNyheter();
});
});
函数fyllNyheter(){
var url=$('#feedListe').val();
$.getFeed({
url:“getRSS.php?url=“+url,
成功:功能(提要){
parseXML(feed);
},
错误:函数(){
$('sectId').html(“出了问题””;
},
完成:函数(){
}
});
}
函数parseXML(提要){
$.each(feed.items,function(i,item){
var tittel=item.title;
var beskrivelse=项目描述;
var url=$(item).find(“enclosure['url']);
$('#sectId')。追加(“”);
});
}
xml的示例:
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
<channel>
<title>NRK - Musikknyheter</title>
<link>http://nrk.no/liste.rss</link>
<description>Musikknyheter</description>
<pubDate>Sat, 13 Oct 2012 16:20:47 +0200</pubDate>
<sy:updateFrequency>12</sy:updateFrequency>
<sy:updatePeriod>hourly</sy:updatePeriod>
<item>
<title>Ny slagkraftig festspillprodusent</title>
<link>http://www.nrk.no/nyheter/distrikt/troms_og_finnmark/1.8354920</link>
<description>Festspillene i Nord-Norge har ansatt Nasra Ali Omar som ny produsent for barn og unge.</description>
<pubDate>Thu, 11 Oct 2012 14:41:39 +0200</pubDate>
<enclosure url="http://www.nrk.no/contentfile/imagecrop/1.6102705?cropid=f169w225" type="image/jpeg"/>
</item>
</channel>
</rss>
NRK-Musikknyheter
http://nrk.no/liste.rss
穆斯克尼赫特
2012年10月13日星期六16:20:47+0200
12
每小时
Ny slagkraftig FestspellProducent
http://www.nrk.no/nyheter/distrikt/troms_og_finnmark/1.8354920
北挪威Festspillene i har ansatt Nasra Ali Omar som ny barn og unge的产品。
2012年10月11日星期四14:41:39+0200
var tittel
返回每个项目的正确标题(因此我知道我与提要取得了联系)
var url
仅返回[Object]
我正在使用jFeed。请参见此处的jFeed php和js:
我该怎么办?我的谷歌搜索已经变成紫色,我不想使用其他插件,我想在javascript/jquery中使用它
感谢你阅读我的问题:)快乐地解决问题 发布xml后修订的答案:
url
是enclosure
标记的一个属性
使用:
演示:如果您的xml提要标记是这样的类型
<link rel="enclosure" type="image/jpeg" length="2893" href="http://imgs.server.com/2010/06/imagethumb.jpg"/>
在代码中
$(item).find(“enclosure['url']).text()
?我想这不是我要找的文本,我需要属性url的内容。您的解决方案给了我“Uncaught TypeError:无法调用undefined”的方法“text”post一些xml,可能必须转义“[]”,如果是属性,则将使用不同的选择器并使用attr()
method使用attr()
method修改解决方案我看到您的小提琴工作正常。不知何故,我在定义var media=$(item.find(“enclosure”).attr(“url”)时没有定义代码>问题是$。每个(feed.items
.Cose通常用于对象而不是xml。您将传递什么到parseXML
?在ajax成功中显示更多代码
<link rel="enclosure" type="image/jpeg" length="2893" href="http://imgs.server.com/2010/06/imagethumb.jpg"/>
var img = $(this).find('link[rel|="enclosure"]').attr('href');