2012-01-02 1 views
1

У меня есть базовый скрипт для создания эффекта слайдера. У меня есть настройка для простого переключения элементов. Вместо того, чтобы просто переключаться, им нужно создать эффект fadeOut/fadeIn. Иерархия документации, похоже, отличается от каждого сценария ... есть ли метод базового или начального уровня для добавления эффекта затухания к уже существующему скрипту? Заранее спасибо.jQuery fadeOut/fadeIn help help. (jsfiddle)

jsfiddle: http://jsfiddle.net/williamwong/865gG/1/

ответ

0

Я думаю, что вы могли бы использовать одушевленные(), скрыть(), шоу() функции, использующие непрозрачности свойства.

1

Самый простой способ - использовать методы jQuery fadeIn() и fadeOut().

$('div').fadeIn(); 

Документация для этих методов (fadeIn(), fadeOut()) имеет большие примеры.

EDIT

Вот как я бы изменить код, чтобы использовать его:

var cycle = window.setInterval(next, 2000); 

function next() { 
    $('#slides .current').fadeOut(function(el) { 
     $(this).removeClass('current').next().add('#slides :first').last().addClass('current').fadeIn() 
     }); 
} 

В принципе, вы хотите ждать, пока FADEOUT не завершится исчезать в следующем пункте. Кроме этого, ваш код почти такой же.

обновление развилка вашей скрипкой - http://jsfiddle.net/9BQTH/2/

+0

Здравствуйте Kekoa, Благодарим Вас за рекомендацию. Я следил за сценарием, который вы здесь написали (скрипка не соответствовала ему и не работала полностью правильно), и сценарий, по большей части, работает красиво. Единственный вопрос, который у меня есть, заключается в том, как я могу избежать перестановки страницы после завершения цикла и почему требуется пройти весь цикл один раз до того, как эффект fadeIn будет работать? Вы когда-нибудь видели что-то подобное раньше? вот обновленная скрипка: http://jsfiddle.net/williamwong/9BQTH/4/ –