【问题标题】:Using jQuery to parse an RSS feed, having trouble in firefox and chrome使用 jQuery 解析 RSS 提要,在 firefox 和 chrome 中遇到问题
【发布时间】:2011-01-27 10:14:55
【问题描述】:

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

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

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

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

jQuery.getFeed({ 网址:'http://sammarshalldesign.co.uk/blog/wordpress/?feed=rss2', 成功:功能(饲料){

        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

任何帮助将不胜感激。

【问题讨论】:

  • 我刚刚注意到这不是浏览器的问题,但是当作为 http:// 而不是 www 访问时。代码似乎工作正常。知道这可能是什么原因吗?
  • 无法复制。作品在 FF 3.6 中找到。如果我加载 www.sammarshalldesign.co.uk 或 sammarshalldesign.co.uk 没有区别

标签: jquery xml rss jfeed


【解决方案1】:

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

【讨论】:

    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-01-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多