3

我使用了一个名为 jFeed 的 jQuery 库来解析并在我的个人网站上显示我的博客 rss 提要。起初它工作得很好,但后来检查时它什么也没有显示,除了在 Internet Explorer 中,它似乎工作正常。

在 Firefox 中使用 Firebug 检查 javascript 控制台后,它在“XML”选项卡中显示错误,如下所示:

XML 解析错误:找不到元素位置:moz-nullprincipal:{3f8a0c62-32b4-4f63-b69c-9ef402b40b64} 第 1 行,第 1 列:^

虽然我不知道如何处理这些信息。这是我用来获取 rss 提要并显示它的代码(它与 jFeed 网站提供的示例几乎完全相同):

jQuery.getFeed({ url: ' http://sammarshalldesign.co.uk/blog/wordpress/?feed=rss2 ', 成功: function(feed) {

        var html = '';

        for(var i = 0; i < feed.items.length && i < 5; i++) {

            var item = feed.items[i];

            html += '<h3>'
            + '<a href="'
            + item.link
            + '">'
            + item.title
            + '</a>'
            + '</h3>';


            html += '<div>'
            + item.description
            + '</div>';
        }//end for

        jQuery('#feed').append(html);
    }//end feed function    
});//end getfeed

任何帮助将非常感激。

4

3 回答 3

1

作为替代方案,Google 确实提供了一个feed api。查看这个Google Feed 插件,它使整个过程变得非常简单(不需要 php)。

于 2010-03-14T18:09:56.557 回答
0

您是否尝试从另一个域加载 RSS 提要?如果是这样,它将无法正常工作。jFeed 附带一个示例 PHP 代理,您可以将其放在服务器上并调用。或者,您可以使用 Yahoo! 以 JSON 格式获取数据的管道。

于 2010-03-14T17:04:51.783 回答
0

我发现这一点很困难,但与 Internet Explorer 不同,Firefox 不允许跨域 XML 请求没有来自您正在访问的服务器的某种身份验证。您需要使用 JSON(您可以使用 JSON在 jQuery 中执行跨站点/跨域请求),或者在本地为您的 XML 提要创建某种代理,然后使用您的 jQuery 请求进行处理。

于 2010-03-19T01:42:24.687 回答