Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 27.06.2012, 10:19
Новичок на форуме
Отправить личное сообщение для Miro Посмотреть профиль Найти все сообщения от Miro
 
Регистрация: 10.01.2009
Сообщений: 9

when done animation
Всем доброго!

Помогите, пожалуйста, разобраться:

Если необходимо что-то выполнить после окончания анимации - пишем, например:

$('#element').fadeIn(500, function() {
   //то, что надо выполнить
});


Но fadeIn используется массово и в последствии для простоты изменения длины анимации хочу загнать его в функцию:

function fadeIn(x) { $(x).fadeIn(500); }
fadeIn(myVar);



Как что-то выполнить по окончании анимации в функции fadeIn() ?

P.S. пробовал when done, но такой вариант не ждёт окончания анимации.
Ответить с цитированием
  #2 (permalink)  
Старый 27.06.2012, 10:42
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

почему просто так не написатЬ?
function fadeIn(x, callback) { return $(x).fadeIn(500, callback); }
Ответить с цитированием
  #3 (permalink)  
Старый 27.06.2012, 10:51
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

function fadeIn(x, func) { $(x).fadeIn(500, func); }
fadeIn(myVar, function() {
   //то, что надо выполнить
});


function fadeIn(x) {
    var def = $.Deferred();
    $(x).fadeIn(5000, function() {
        def.resolve(x);
    });
    return def;
}
var q = fadeIn('#element');
q.done(function(elem){
    console.log(elem)
});

и модификация последнего кода, из гугла(запрос jquery fadein deferred)
http://www.scottlogic.co.uk/2011/05/...rx-observable/
Ответить с цитированием
  #4 (permalink)  
Старый 27.06.2012, 11:23
Новичок на форуме
Отправить личное сообщение для Miro Посмотреть профиль Найти все сообщения от Miro
 
Регистрация: 10.01.2009
Сообщений: 9

Сообщение от melky Посмотреть сообщение
почему просто так не написатЬ?
function fadeIn(x, callback) { return $(x).fadeIn(500, callback); }
Спасибо! То, что надо!
Ответить с цитированием
  #5 (permalink)  
Старый 27.06.2012, 11:25
Новичок на форуме
Отправить личное сообщение для Miro Посмотреть профиль Найти все сообщения от Miro
 
Регистрация: 10.01.2009
Сообщений: 9

Сообщение от Gvozd Посмотреть сообщение
function fadeIn(x, func) { $(x).fadeIn(500, func); }
fadeIn(myVar, function() {
   //то, что надо выполнить
});


function fadeIn(x) {
    var def = $.Deferred();
    $(x).fadeIn(5000, function() {
        def.resolve(x);
    });
    return def;
}
var q = fadeIn('#element');
q.done(function(elem){
    console.log(elem)
});

и модификация последнего кода, из гугла(запрос jquery fadein deferred)
http://www.scottlogic.co.uk/2011/05/...rx-observable/
И вам спасибо!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
CSS3 animation рывками Gozar (X)HTML/CSS 9 27.03.2012 13:11
Как проверить, поддерживается ли событие? FINoM Общие вопросы Javascript 44 31.12.2011 17:19
Помогите разобраться с анимацией kent666 Элементы интерфейса 2 26.10.2011 12:13
jQuery - проблемы с анимацией в ff(3.6.6) - custom animation Paska Элементы интерфейса 0 21.07.2010 13:21
jquery - animation quazare jQuery 0 23.11.2009 06:53