Jquery无限滚动从其他站点加载内容

时间:2012-08-15 07:48:32

标签: javascript jquery scroll http-get

嗨,我得到了这个名为jquery-endless-scroll的jquery。我的代码看起来与此类似:

 $(function() {
  $('#list').endlessScroll({
    pagesToKeep: 10,
    fireOnce: false,
    insertBefore: "#list div:first",
    insertAfter: "#list div:last",
    content: function(i, p) {
      $.get('http://google.com', function(data) {
      return '<li>' + data + '</li>'
      });
    },
    ceaseFire: function(i) {
      if (i >= 10) {
        return true;
      }
    },
    intervalFrequency: 5
  });
});

我的主要问题是它应该返回的内容。其余的不是那么重要。 我希望它返回google.com的html标记,但不返回此标记,而是返回任何内容。我做错了什么?

2 个答案:

答案 0 :(得分:1)

由于出于安全目的的跨域策略问题,您无法使用客户端Javascript执行此操作。但是如果尝试在运行脚本的同一域上读取文件的内容,那么它将起作用。

您应该使用node.js - 服务器端Javascript来处理这些事情:

http://net.tutsplus.com/tutorials/javascript-ajax/web-scraping-with-node-js/

答案 1 :(得分:1)

由于原始政策相同,您的内容未被退回。您无法从其他服务器请求数据。

请参阅http://api.jquery.com/jQuery.get/

上的说明

“由于浏览器安全限制,大多数”Ajax“请求都受到相同的原始策略的约束;请求无法从不同的域,子域或协议中成功检索数据。”