Jquery ajaxStop - PullRequest
       1

Jquery ajaxStop

1 голос
/ 09 августа 2011

Есть ли очевидная причина из кода ниже, почему это не сработает?

Когда я запускаю, div "ajaxBusy" никогда не прячется, а div "content" никогда не меняет свои настройки видимости.Поэтому я склонен полагать, что .ajaxStop никогда не происходит.Я попытался удалить все другие функции JavaScript, но это ничего не изменило.

В заголовке HTML-документа у меня есть:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script> 
<!--<script type="text/javascript">
    $(function() { 
        $("#content").css('visibility','hidden');
        $('#ajaxBusy').ajaxStop(function(){ 
        alert('it ran!');
          $('#ajaxBusy').hide(); 
          $("#content").css('visibility','visible');
        });
    }); 
</script> --> 
<script src="sliding.form.js" type="text/javascript"></script> 
<script src="scripts.js" type="text/javascript"></script> 

, где "ajaxBusy" содержит загрузочный GI.Это закомментированный код, который не работает должным образом.

Ответы [ 3 ]

1 голос
/ 09 августа 2011

Убедитесь, что вы связываете .ajaxStop перед вызовом вашего ajax-запроса.Я не вижу никакого Ajax в вашем коде, я предполагаю, что это не проблема.:)

0 голосов
/ 09 августа 2011

Попробуйте использовать

    $('#ajaxBusy').ajaxStop(function(){ 
      $(this).hide(); 
      $("#content").show();
    });

Как это используется в jquery api docs.http://api.jquery.com/ajaxStop/. Используйте .show(); и .hide(); вместо установки атрибута видимости css.

Кроме того, я бы просто поместил alert('it ran!'); внутри обратного вызова, чтобы получить быструю обратную связь в вашем браузере, чтобыназывается ли это или нет.

0 голосов
/ 09 августа 2011

hide () устанавливает свойство css элемента display:none, чтобы подтвердить Firebug.visibility: visible ничего не сделает, так как свойства display и видимости скрывают div по-разному.видимость скрывает div, но оставляет его в DOM, т. е. там, где div будет отображаться пустым.display: none отображает DOM, как если бы div никогда не существовал.

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