0

嗨,我得到了一个叫做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 标记,但不返回此标记,它什么也不返回。我究竟做错了什么?

4

2 回答 2

1

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

您应该使用node.js - 用于此类内容的服务器端 Javascript:

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

于 2012-08-15T07:53:06.857 回答
1

由于同源政策,您的内容不会被退回。您不能从其他服务器请求数据。

请参阅http://api.jquery.com/jQuery.get/上的注释

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

于 2012-08-15T07:55:55.873 回答