更改Ajax Url调用动态onScroll

时间:2017-03-21 09:27:00

标签: javascript jquery ajax

我想动态更改 Ajax网址,这是我到目前为止所做的:

var size=1;
var from = 1;
window.addEventListener('mousewheel', function(e){

    if(e.wheelDelta<0 && from<5){
        from++;
    }
    else if(e.wheelDelta>0 && from>1){
        from--;
    }
    console.log(from)
});

$.ajax({
   type: 'GET',
   url: "/api/v1/users?f="+from+"&s="+size,
   data: { get_param: 'value' },
   dataType: 'json',

使用mousewheel事件我更改“来自”的值,使用此变量我可以连接字符串/api/v1/users?f="+from+"&s="+size,以形成网址。

当我提供mousewheel事件监听器时,变量工作正常,但不会更改Ajax URL。

任何提示?

2 个答案:

答案 0 :(得分:0)

您的理解不正确,滚动代码块会在滚动完成后更改from的值。但是,当页面加载ajax调用时,初始值为from

所以要解决这个问题,你必须在事件处理程序中调用ajax。

答案 1 :(得分:0)

如果我理解正确,我认为以下内容会对您有所帮助。

您需要在事件列表器中移动ajax调用以获取ajax调用中的from值

以下是基于您提供的代码的解决方案。

&#13;
&#13;
var size = 1;
var from = 1;
window.addEventListener('mousewheel', function(e) {
  if (e.wheelDelta < 0 && from < 5) {
    from++;
  } else if (e.wheelDelta > 0 && from > 1) {
    from--;
  }
  $.ajax({
  type: 'GET',
  url: "/api/v1/users?f=" + from + "&s=" + size,
  data: {
    get_param: 'value'
  },
  dataType: 'json',
  success: function() {}
})
});
&#13;
&#13;
&#13;