Подождите, пока функция не будет загружена - PullRequest
5 голосов
/ 27 апреля 2009

Как я могу в jQuery тестировать, когда функция javascript полностью загружена? Я хотел бы использовать gif, который отображает загрузку, когда загружается функция javascript, и скрывать его, когда функция полностью загружена?

Ответы [ 3 ]

9 голосов
/ 27 апреля 2009
$(function(){
    $("#loadingGIF").show();
    WaitForFunction();
});

function WaitForFunction()
{
    if (!$.isFunction(FUNCTION_TO_WAIT_ON_HERE)) {
       setTimeout( WaitForFunction, 100);
       return;
    }
    Function_Loaded();
}

function Function_Loaded(){
      $("#loadingGIF").hide();
}
1 голос
/ 27 апреля 2009

Я не уверен, что вы подразумеваете под загрузкой, но в любом случае должно применяться следующее:

  1. Когда вы начнете загружать код JavaScript, отобразите GIF
  2. В загружаемом коде добавьте инструкцию, чтобы скрыть GIF в конце

Это должно решить вашу проблему "простым" способом без использования таймеров и т. Д.

1 голос
/ 27 апреля 2009

Просто позвоните себе после определения функции. Операторы после определения функции будут выполняться только после прочтения (и, следовательно, выполнения) предыдущего исходного текста.

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