jQuery Document Ready i Function Scope

Chcę udostępnić funkcje pomocnicze, które pozwalają różnym komponentom złożonego interfejsu użytkownika opartego na jQuery ukryć lub pokazać ładowaniediv (używane, gdy wywołanie Ajax jest inicjowane z różnych części strony).

W tym celu początkowo napisałem taki kod:

<script type="text/javascript">
$(function ()
{
    var loadingControl = $("#loading");

    function showLoading() {
        loadingControl.show();
    }
}
</script>

Szybko to jednak zrozumiałemshowLoading ma tylko zakres w tym konkretnymdokument gotowy.

Zgodnie z radą od

https://stackoverflow.com/a/1055799/141172

OświadczyłemshowLoading w skali globalnej jak ten:

<script type="text/javascript">
var showLoading;
$(function ()
{
    var loadingControl = $("#loading");

    function showLoading() {
        loadingControl.show();
    }
}
</script>

Jednak wciąż to znajdujęshowLoading nie jest dostępny wdokument gotowy bloki, które wykonują się później. Błąd jest

Wartość właściwości „showLoading” jest null lub undefined, a nie obiekt Function

To zachowanie można zobaczyć tutaj:

http://jsfiddle.net/NfXFT/4/

JsFiddle dowodzi również, żeshowLoading wdrożeniadokument gotowy biegnie przeddokument gotowy blok, który go wywołuje.

Co jest nie tak i jak mogę udostępnić tę metodę pomocy?

Definiuję to w ciągudokument gotowy blok, ponieważ opiera się na dostępnym „# ładowaniu”. Czy istnieje lepsze podejście do osiągnięcia tego samego celu, jakim jest funkcja pomocnicza do ukrywania / pokazywania ekranu ładowania? Chcę to zachować w funkcji pomocniczej, ponieważ implementacja może się później zmienić.

questionAnswers(1)

yourAnswerToTheQuestion