Хорошо, моя цель - сделать простую анимацию, в которой домино перемещается от передней части кучи к тыльной, когда на нее нажимают.
У меня есть кое-что, что работает здесь: http://jsfiddle.net/Kirkman/tDmHE/
Но это состоит из большой серии вложенных колбэков, и со временем у меня будет более пяти домино. И тогда я узнал, что очередь jQuery может помочь мне сохранить мой код в чистоте и не будет вкладывать все эти обратные вызовы.
Вот что я придумала. Но это работает только при первом нажатии: http://jsfiddle.net/Kirkman/R7TmU/8/
Я не могу понять, почему он не будет работать в последующие времена.
Вот соответствующие функции JS:
function dominoSlide(theThis) {
$('#dominoes .nav ul li').removeClass('selected',500);
var thisDomino = theThis.parent();
$('#dominoes .nav ul').queue(function() {
thisDomino.switchClass('domino0','selected', 250);
$('.domino1').switchClass('domino1','domino0',10);
$('.domino2').switchClass('domino2','domino1',10);
$('.domino3').switchClass('domino3','domino2',10);
$('.domino4').switchClass('domino4','domino3',10);
thisDomino.addClass('domino4');
thisDomino.removeClass('selected',250);
resetHandlers();
});
}
function resetHandlers() {
$('#dominoes .nav ul li a').unbind();
$('.domino0 a').bind('click', function(event) {
var theThis = $(this);
dominoSlide(theThis);
event.preventDefault();
});
$('#dominoes .nav ul li:not(".domino0") a').bind('click', function(event) {
event.preventDefault();
});
}