我有这样的Atom提要......
<?xml version="1.0"?>
<feed
xml:base="http://earthquake.usgs.gov/"
xmlns="http://www.w3.org/2005/Atom"
xmlns:georss="http://www.georss.org/georss">
<updated>2009-10-12T14:47:25Z</updated>
<title>USGS M2.5+ Earthquakes</stitle>
<subtitle>Real-time, worldwide earthquake list for the past 7 days</subtitle>
<link rel="self" href="/eqcenter/catalogs/7day-M2.5.xml"/>
<link href="http://earthquake.usgs.gov/eqcenter/"/>
<author><name>U.S. Geological Survey</name></author>
<id>http://earthquake.usgs.gov/</id>
<icon>/favicon.ico</icon>
<entry>
<id>urn:earthquake-usgs-gov:us:2009mra9</id>
<title test='GOT IT'>M 5.3, Santa Cruz Islands</title>
<updated>2009-10-12T12:44:40Z</updated>
<link rel="alternate" type="text/html" href="/eqcenter/recenteqsww/Quakes/us2009mra9.php"/>
<link rel="related" type="application/cap+xml" href="/eqcenter/catalogs/cap/us2009mra9" />
<summary type="html"><![CDATA[<p>stuff...</p>]]></summary>
<georss:point>-11.7295 166.3124</georss:point>
<georss:elev>-60100</georss:elev>
<category label="Age" term="Past day"/>
</entry>
</feed>
这样的jQuery代码......
$(document).ready(function(){
$.get('data/_7day-M2.5.xml', {}, function(xml){
$(xml).find('entry').each(function(i){
alert($(this).find("title").text()); // DOESN'T WORK (EMPTY)
alert($(this).find("title").attr('test')); // DOESN'T WORK ('undefined')
alert($(this).find("id").text()); // WORKS
alert($(this).find("georss\\:point").text()); // WORKS
});
});
});
但是就像评论所说的那样,它在<title>
中找不到<entry>
元素,但很高兴找到其他内容。
任何想法为什么以及如何克服这个?
干杯
答案 0 :(得分:1)
您有</stitle>
而不是</title>
作为结束标记。我猜这就是问题:)。
答案 1 :(得分:0)
答案 2 :(得分:0)
你有一个名为stitle的结束标签...(oops Alex Ciminian打败了我......还在醒来!)
<title>USGS M2.5+ Earthquakes</stitle>
只需将其重命名,也可以获得第二个标题,您可能需要先找到该条目
alert($(this).find("entry").find("title").attr('test'));
答案 3 :(得分:0)
其他没有必要使用Jfeed ......我猜保罗的例子只是一个错字......他的意思是某些浏览器有问题拉动该标签的内容......我在Safari上有相同的体验.. 。使用 eq(0)
进行托盘alert($(this).find("title").eq(0).text());