Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Активные запросы (https://javascript.ru/forum/misc/70681-aktivnye-zaprosy.html)

surru 25.09.2017 09:44

Активные запросы
 
Добрый день. К сожалению в гугле ответа на терзающий вопрос не нашёл, прошу помощи:
в файрбаге есть такой момент -
т.е. там отображается количество активных ajax-запросов открытой страницей. Внимание вопрос: Как в JS получить число активных запросов на странице? Обратиться по пути
window.Argus.System.Ajax._activeAjaxCount
не получается.
Ну и если я совсем не в ту сторону смотрю, то переформулирую вопрос. Надо любым образом узнать количество активных запросов на странице, или же их текущий статус. Зачем оно надо? Надо узнать окончена ли подгрузка данных на странице. Данные подгружает не мой скрипт, модифицировать возможности нет.

Dilettante_Pro 25.09.2017 11:41

surru,
Может, это?
Завершение всех запросов

surru 25.09.2017 12:06

Да, это было бы замечательно. Но в моём случае надо это сделать на голом JS, возможно на уровне общения с браузером.

Rise 26.09.2017 06:34

Цитата:

Сообщение от surru
Данные подгружает не мой скрипт, модифицировать возможности нет.

А менять порядок загрузки скриптов возможность есть?

surru 26.09.2017 08:54

Нет. Изменять ничего нельзя, только сбор информации.

Rise 26.09.2017 09:10

surru,
твой js тогда как там окажется?

surru 26.09.2017 10:24

Печально, но он там оказывается при помощи iMacros

Rise 26.09.2017 10:32

surru,
и что там нельзя выполнить свой скрипт до загрузки документа?

surru 26.09.2017 12:21

Можно. Но нужно выполнить скрипт после подгрузки данных. Данные подгружаются когда происходит скролл документа. Время подгрузки данных всегда разное, просто ставить завышенную задержку на исполнение скрипта не вариант.

Rise 26.09.2017 12:42

surru,
а чем поможет количество запросов и их статус если запрос происходит на скролл в конец документа, т.е. один проскролл один запрос и тд? кто скроллить будет и с какой периодичностью?

surru 26.09.2017 13:12

Скроллит мой скрипт, затем он должен дождаться завершения запроса, скролить снова, и так пока скролл не окажется в самом низу, а количество активных запросов при этом не будет равным нулю.

Rise 26.09.2017 13:26

surru,
разве скролл не оказывается внизу при каждом скролле и количество активных запросов не равно нулю перед каждым новым скроллом?

surru 26.09.2017 14:45

скролл оказывается внизу, разумеется. После чего происходит запрос, подгружаются новые данные. Надо дождаться конца запроса и скроллить снова.

Rise 27.09.2017 08:34

surru,
как вариант
window.addEventListener('load', function() {
	var active = 0, timeout;
	this._XMLHttpRequest = XMLHttpRequest;
	this.XMLHttpRequest = request;
	scroll();
	function request() {
		var xhr = new _XMLHttpRequest();
		xhr.addEventListener('loadstart', function() { clearTimeout(timeout), active++ });
		xhr.addEventListener('loadend', function() { --active || scroll() });
		return xhr;
	}
	function scroll() {
		timeout = setTimeout(loaded, 2000);
		scrollTo(0, 1000000);
	}
	function loaded() {
		alert('loaded');
	}
});

surru 27.09.2017 13:21

Увы, событие load уже своё оттарабанило, в любом случае получается, что загрузка документа завершена, но данные подтягиваются(

Rise 27.09.2017 13:43

surru,
не понял, поподробнее

surru 27.09.2017 15:11

Этот код в любом случае реагирует что загрузка завершена, даже если ajax-запрос ещё не завершён.

Rise 27.09.2017 17:14

surru,
значит там не ajax-запрос а что то другое


Часовой пояс GMT +3, время: 07:02.