好的,所以我的目標是製作一個簡單的動畫,當一個多米諾骨牌被點擊時,它從一堆的前面移動到後面。爲什麼我的jQuery隊列在執行一次後停止工作?
我有一些作品在這裏: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();
});
}
請註明您需要在問題本身有助於實際的代碼。 –
好的,我添加了它們。 – Kirkman14
你有使用jQuery 1.3的原因嗎? – PetersenDidIt