Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Проблемы c ajax-запросом

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
likvidator
Отправлено: 01 Февраля, 2014 - 18:54:24
Post Id


Посетитель


Покинул форум
Сообщений всего: 416
Дата рег-ции: Март 2012  


Помог: 4 раз(а)

[+]


Вот код:
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. $(document).ready(function(){
  3. var inProgress = false;
  4. var startFrom = 0;
  5.     $(window).scroll(function(){
  6.         if($(window).scrollTop() + $(window).height() >= $(document).height() - 200 && !inProgress) {
  7.         $.ajax({
  8.             url: '/../news_pagination.htm',
  9.             method: 'GET',
  10.             data: {"startFrom" : startFrom},
  11.             beforeSend: function() {
  12.             inProgress = true;},
  13.             $("#main").append("<p><b>" + data + "</b>");
  14.             inProgress = false;
  15.             startFrom += 10;
  16.             }
  17.             });
  18.         };
  19.     });
  20. });
  21.  

Проблемо в том,что он за раз отправляет по 7 запросов,а почему - я никак понять не могу... Нужно сделать как-то,чтоб пока нет ответа - другие запросы не отправляются... Переменная inProgress вроде этим и занимается...

(Отредактировано автором: 01 Февраля, 2014 - 18:55:04)

 
 Top
SAD
Отправлено: 01 Февраля, 2014 - 21:11:31
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




CODE (javascript):
скопировать код в буфер обмена
  1. $(document).ready(function () {
  2.     var inProgress = false,
  3.         startFrom = 0,
  4.         $window = $(window);
  5.    
  6.     $window.scroll(function () {
  7.         if ($window.scrollTop() + $window.height() >= $(document).height() - 200 && !inProgress) {
  8.             inProgress = true;
  9.            
  10.             $.ajax({
  11.                 url: '/../news_pagination.htm',
  12.                 method: 'GET',
  13.                 data: {
  14.                     startFrom: startFrom
  15.                 },
  16.                 success: function (data) {
  17.                     startFrom += 10;
  18.  
  19.                     $("#main").append("<p><b>" + data + "</b></p>");
  20.                    
  21.                     inProgress = false;
  22.                 }
  23.             });  
  24.         }
  25.     });
  26. });

(Отредактировано автором: 01 Февраля, 2014 - 21:11:58)

 
 Top
likvidator
Отправлено: 01 Февраля, 2014 - 21:32:16
Post Id


Посетитель


Покинул форум
Сообщений всего: 416
Дата рег-ции: Март 2012  


Помог: 4 раз(а)

[+]


SAD пишет:
CODE (javascript):
скопировать код в буфер обмена
  1. $(document).ready(function () {
  2.     var inProgress = false,
  3.         startFrom = 0,
  4.         $window = $(window);
  5.    
  6.     $window.scroll(function () {
  7.         if ($window.scrollTop() + $window.height() >= $(document).height() - 200 && !inProgress) {
  8.             inProgress = true;
  9.            
  10.             $.ajax({
  11.                 url: '/../news_pagination.htm',
  12.                 method: 'GET',
  13.                 data: {
  14.                     startFrom: startFrom
  15.                 },
  16.                 success: function (data) {
  17.                     startFrom += 10;
  18.  
  19.                     $("#main").append("<p><b>" + data + "</b></p>");
  20.                    
  21.                     inProgress = false;
  22.                 }
  23.             });  
  24.         }
  25.     });
  26. });

к сожалению - картина таже
 
 Top
SAD
Отправлено: 01 Февраля, 2014 - 23:57:40
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




CODE (javascript):
скопировать код в буфер обмена
  1. $.fn.scrollStopped = function (callback) {          
  2.     $(this).scroll(function () {
  3.         var self = this,
  4.               $this = $(self);
  5.  
  6.         if ($this.data('scrollTimeout')) {
  7.             clearTimeout($this.data('scrollTimeout'));
  8.         }
  9.  
  10.         $this.data('scrollTimeout', setTimeout(callback, 100, self));
  11.     });
  12. };
  13.  
  14.     $(document).ready(function () {
  15.         var startFrom = 0,
  16.               $window = $(window);
  17.        
  18.         $window.scrollStopped(function () {
  19.             if ($window.scrollTop() + $window.height() >= $(document).height() - 200) {
  20.                 $.ajax({
  21.                     url: '/../news_pagination.htm',
  22.                     method: 'GET',
  23.                     data: {
  24.                         startFrom: startFrom
  25.                     },
  26.                     success: function (data) {
  27.                         startFrom += 10;
  28.      
  29.                         $("#main").append("<p><b>" + data + "</b></p>");
  30.                     }
  31.                 });  
  32.             }
  33.         });
  34.     });
 
 Top
likvidator
Отправлено: 02 Февраля, 2014 - 08:48:42
Post Id


Посетитель


Покинул форум
Сообщений всего: 416
Дата рег-ции: Март 2012  


Помог: 4 раз(а)

[+]


SAD пишет:
CODE (javascript):
скопировать код в буфер обмена
  1. $.fn.scrollStopped = function (callback) {          
  2.     $(this).scroll(function () {
  3.         var self = this,
  4.               $this = $(self);
  5.  
  6.         if ($this.data('scrollTimeout')) {
  7.             clearTimeout($this.data('scrollTimeout'));
  8.         }
  9.  
  10.         $this.data('scrollTimeout', setTimeout(callback, 100, self));
  11.     });
  12. };
  13.  
  14.     $(document).ready(function () {
  15.         var startFrom = 0,
  16.               $window = $(window);
  17.        
  18.         $window.scrollStopped(function () {
  19.             if ($window.scrollTop() + $window.height() >= $(document).height() - 200) {
  20.                 $.ajax({
  21.                     url: '/../news_pagination.htm',
  22.                     method: 'GET',
  23.                     data: {
  24.                         startFrom: startFrom
  25.                     },
  26.                     success: function (data) {
  27.                         startFrom += 10;
  28.      
  29.                         $("#main").append("<p><b>" + data + "</b></p>");
  30.                     }
  31.                 });  
  32.             }
  33.         });
  34.     });

а вот за это лайк!!! Спасибо огромное!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« JavaScript & VBScript »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB