$('.myElem').live('click', function() {
$(this).hide(500, function() {
$(this).siblings('.myOtherElem').show();
});
});
Вышеупомянутое не работает, потому что $(this)
больше не в правильной области в обратном вызове. Как передать исходный исходный элемент в обратный вызов?jQuery получить исходный элемент в обратном вызове
Это не будет выполнено то же самое. Помещение вызова '.show()' в обратном вызове гарантирует, что оно не произойдет, пока анимация '.hide()' не будет завершена. Код в вашем ответе заставит их оба произойти почти одновременно. –
Вы можете сделать это, используя 'delay':' .delay (500) .show (1) 'Однако использование обратного вызова' show' - лучшее решение. – jantimon