English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Каллбэк-функции jQuery (Callback)

JavaScript строки выполняются построчно. Однако, так как эффекты jQuery требуют времени для выполнения, следующая строка кода может быть выполнена, когда предыдущий эффект еще не завершен. Это может привести к ошибке.

Чтобы предотвратить это, jQuery предоставляет каллбэк-функцию для каждого метода эффекта.

Каллбэк-функция будет выполнена после завершения текущего эффекта.

Каллбэк-функция передается в качестве параметра метода эффекта и обычно отображается в качестве последнего параметра метода.

Типичная грамматика: $(selector).hide(duration, easing, callback);

Следующий пример имеет один параметр каллбэка, который будет выполнен после завершения эффекта скрытия:

$("button").click(function(){
  $("p").hide("slow", function(){
    // код, который нужно выполнить после завершения эффекта
    alert("The paragraph is now hidden");
  });
});
Проверьте, что‹/›

Следующий пример не имеет параметра каллбэка и будет отображать диалоговое окно警报ы до завершения эффекта скрытия:

$("button").click(function(){
  $("p").hide("slow");
     alert("Этот абзац теперь скрыт");
});
Проверьте, что‹/›