Инициация первого запуска функции
Ребят, есть такая функция:
function updateCurrGames()
{
$.ajax
({
type: "POST",
dataType: "json",
url: "./ajax/updateCurrGames.php",
success: function(currGames)
{
// do something
}
});
}
Скрипт updateCurrGames.php может выполняться очень долго (будет "молчать" и ничего не выводить до тех пор, пока в базе не произойдут изменения (не создадут новую игру)). в html пишу: <body onLoad=" updateCurrGames();"> и страница очень долго грузится (на самом деле как будто ожидает ответа от updateCurrGames.php, но ведь обращение к этому файлу произошло после загрузки страницы??? (вот тут: body onLoad=" updateCurrGames();")) Как функцию запустить после полной-полной загрузки страницы? Чтобы ожидание ответа от updateCurrGames.php было "в фоне", а не заставляло браузер ждать ответа? С проблемой можно ознакомиться тут: http://gifbox.ru/game4/ . Попробуйте открыть страницу. Если она все-же загрузится быстро (такое иногда бывает) - попробуйте обновить. То что страница так долго "грузится" именно по названной выше причине - это точно... |
Попробуйте так. onLoad=" updateCurrGames();" уберите, а перед </body> вставьте код:
setTimeout(function() {
updateCurrGames();
}, 50);
|
Спасибо за наводку. Так стало легче. Но таймаут увеличил. 50мс оказалось мало...
Другого выхода нет..? |
Цитата:
|
| Часовой пояс GMT +3, время: 15:55. |