在JavaScript / jQuery中解析外部RSS提要

时间:2014-03-26 13:42:57

标签: javascript jquery rss

最终我希望能够做到以下几点:

  1. 解析外部RSS提要列表
  2. 合并所有Feed
  3. 将订单随机化,以便将所有Feed中的所有项目混合
  4. 列印清单
  5. 目前我专注于第1步,我可以使用YQL成功完成:

      var site = 'http://www.comfyshoulderrest.com/scrape.php?id=1';
      var yql = 'http://query.yahooapis.com/v1/public/yql?q=' + encodeURIComponent('select * from xml where url="' + site + '"') + '&format=xml';
    
    
          $.get(yql).done(function (rss)
          {
            $(rss).find("item").each(function ()
            {
              var $shop_name = $(this).find('shop_name').text();
              var $product_url = $(this).find('product_url').text();
              var $photo_url = $(this).find('photo_url').text();
              var $html = 
                "<div class='item'>" +
                  "<a href='" + $product_url + "'>" +
                    "<div class='image'><img src='" + $photo_url + "' style='width: 100%;'></div>" +
                  "</a>" +
                  "<div class='text'>" +
                    "<ul class='list-inline'>" +
                      "<li><span class='price text-warning'><strong>&pound;7.00</strong></span> <span class='text-muted'><strike>&pound;14.00</strike></span></li>" +
                      "<li class='text-muted'><strong>" + $shop_name + "</strong></li>" +
                    "</ul>" +
                  "</div>" +
                "</div>"
              $('#container').append($html).masonry('appended', $html);
            });
          });
    

    然而,结果很慢(由于这是Chrome新标签页的替代品,因此情况并非如此),我不想依赖外部API,毫无疑问它具有使用限制。< / p>

    我不想使用插件,因为我需要一个具有足够可塑性的解决方案,以便能够执行第2,3和4步。

    我已尝试使用$.get,但这会引发单一来源政策问题。我听说过JSONp是最好的解决方法。

    对最佳方法有何建议?

0 个答案:

没有答案