Получение браузера AJAX для быстрого вызова, пока страница еще загружается - PullRequest
2 голосов
/ 30 апреля 2010

Я ищу советы о том, как заставить браузер как можно быстрее начать вызов AJAX при обработке веб-страницы, в идеале до полной загрузки страницы.

Вот моя приблизительная мотивация: у меня есть веб-страница, которая загружается, скажем, за 5 секунд. Он вызывает веб-сервис, который загружается, скажем, за 10 секунд. Если загрузка страницы и вызов веб-службы происходят последовательно, пользователю придется подождать 15 секунд, чтобы увидеть всю информацию. Однако, если я смогу начать вызов веб-службы до завершения загрузки 5-секундной страницы, то, по крайней мере, некоторая часть работы может выполняться параллельно. В идеале я бы хотел, чтобы как можно больше работы выполнялось параллельно.

Моя первоначальная теория заключалась в том, что я должен поместить вызывающий AJAX javascript как можно выше в исходный HTML-код веб-страницы (помня о том, чтобы поместить его после включения jquery.js, потому что я делаю вызов с использованием JQuery AJAX ). Я также помнил, что не нужно помещать вызов AJAX в обработчик событий jquery ready . (Я упоминаю об этом, потому что готовые события популярны в большинстве примеров кода jquery.)

Однако вызов AJAX, похоже, все еще не запускается, как я надеюсь (по крайней мере, если судить по функции "Хронология" в Google Chrome), поэтому мне интересно, какие еще соображения применимы.

Одна вещь, которая может быть потенциально вредной, заключается в том, что вызов AJAX возвращается к тому же веб-серверу, который обслуживает исходную веб-страницу, поэтому я могу рискнуть установить ограничение браузера на число HTTP-подключений к этому. машина? (HTML-страница загружает несколько изображений, CSS-файлов и т. Д.)

1 Ответ

1 голос
/ 30 апреля 2010

Вы можете использовать плагин jQuery onavailable , который будет выполняться, как только элемент будет отображен на странице. Вы можете выполнить его, как только будет отображен элемент, который находится высоко на странице.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...