В jQuery prepend (). Hide (). FadeIn () не так гладко? - PullRequest
0 голосов
/ 19 июня 2010

в jQuery, не будет ли это не так гладко?

$('<a href= ... ><img src= ...  /></a>').prependTo($('#someDiv')).hide().fadeIn()

Будет ли он на самом деле показывать добавленный элемент в течение доли секунды, а затем скрывать его и затем fadeIn?

Тогда анимация будет не такой плавной?

Есть ли лучший метод?

Или следующее?

$('<a style="display:none" href= ... ><img src= ...  /></a>').prependTo($('#someDiv')).fadeIn()

или

$('<a href= ... ><img src= ...  /></a>').hide().prependTo($('#someDiv')).fadeIn()

Обновление: оригинал был

$('#someDiv').prepend('<a href= ><img src  /></a>').hide().fadeIn()

, который на самом деле может скрывать #someDiv, а затем исчезать?

Ответы [ 3 ]

5 голосов
/ 19 июня 2010

Вы можете немного изменить его, используя .prependTo(), например:

$('<a href= ... ><img src= ...  /></a>').hide().prependTo('#someDiv').fadeIn();

Это позволяет вам вызвать .hide() перед его добавлением, поэтому никаких визуальных артефактов нет.

0 голосов
/ 19 июня 2010

Как насчет того, чтобы сначала его затухать, а затем предварять и только потом показывать, довольно плавно, верно?

$('#someDiv').fadeOut("fast").prepend('<a style="display:none" href= ><img src  /></a>').fadeIn("slow");
0 голосов
/ 19 июня 2010

Скрытие и затухание - это бег вокруг таблицы :) Используйте второй метод и установите fadeIn с параметром «slow», например:

$('#someDiv').prepend('<a style="display:none" href= ><img src  /></a>').fadeIn("slow");

И должно быть действительно гладким:)

...