Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   jquery и IE8, проблема анимации (https://javascript.ru/forum/jquery/12075-jquery-i-ie8-problema-animacii.html)

strange_v 29.09.2010 13:35

jquery и IE8, проблема анимации
 
Есть блок div, в который по мере загрузки ($(image).load) додаются (append) превюшки изображений. Плавное появление сделано через fadeIn. После каждых 5 изображений высота блока div увеличивается.

Все это отлично работает во всех браузерах, кроме IE. В нем картинки додаются по 5, а 5 последних не отображаются вообще (пока не подвигаешь курсор).

Но это только визуально, на самом деле, если после div.append(image) добавить alert(1) - увидим, что все отрабатывает правильно (но без анимации fadeIn).
Еще, внизу есть список страниц, обыкновенные линки, со сменой стиля по :hover. Если в процессе анимации активно водить по ним мышей - все идет плавно и как в остальных браузерах!

Что за беда? Ощущение, что блокируется перерисовка интерфейса.

P.S.
Понимаю, что без кода - это практически гадание на кофейной гуще, но выдернуть этот кусок из всего кода - не совсем возможно.

exec 29.09.2010 15:17

Цитата:

Что за беда? Ощущение, что блокируется перерисовка интерфейса.
Попробуйте перерисовывать его самостоятельно, примерно так:

$('body').css('opacity', 0.99);


Т.е. чуть-чуть уменьшаем opacity и происходит перерисовка BODY.

strange_v 29.09.2010 16:11

exec, спасибо, что навели на мысль!

При инициализации скрипта было прописано примерно так:
$(div).css({
	'width': someWidth,
	'height': someHeight,
	'left': someLeft,
	'bottom': someBottom,
	'opacity': 1
});

Последний параметр ('opacity': 1) и приводит к такому результату!

Пока я не понимаю причины данного поведения.

UPD:
Fixed Position and Opacity Filter Bug in Internet Explorer


Часовой пояс GMT +3, время: 07:24.