Ошибка при использовании jQuery .animate () в IE - PullRequest
0 голосов
/ 24 февраля 2011

У меня есть следующий код с jQuery версии 1.4.4:

var currentMemberID = 1;
$('div[memberContainer='+currentMemberID+']').fadeOut(500, function() {                
                $(this).parent().animate({
                    height: '0px',
                    margin: '0px',
                    padding: '0px'
                }, 500, null);                
            });

Этот код отлично работает в Google Chrome и Firefox, но в IE 8 я получаю следующую ошибку:

Недопустимый аргумент "после окончания операции fadeOut.

Родителем div является <li>.

Есть мысли о том, как избежать этой ошибки?

Ответы [ 2 ]

0 голосов
/ 25 февраля 2011

нашел обходной путь:

 $('div[memberContainer='+currentMemberID+']').fadeOut(500, function() {
                $(this).parent().css('padding', '0px');
                $(this).parent().animate({
                    height: '0px',
                    margin: '0px'                    
                }, 500, null);                
            });

Теперь я изменяю отступы за пределами анимации, и он отлично работает.

0 голосов
/ 24 февраля 2011

fadeOut устанавливает отображение элемента в значение «none», когда он достигает 0. Возможно, IE имеет проблему с доступом к родительскому элементу через «this», когда для параметра display установлено значение «none».

Вы пыталисьвместо анимации анимация?

$("#childDiv").animate({ opacity: 0 }, 500, function() {
    $(this).parent.animate({ height: '0px', width'0px' }, 500, null);
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...