, sayfa yüklenirken data-id
özelliklere sahip 12 madde bir dizi showcaseIds
içine itilir 12 madde), currentItemId
null olduğu gibi, daha fazla öğe yüklemek istiyorum, ajax çağrısının bitmesini bekleyin, sayfadaki tüm yeni kimlikleri bittikten sonra diziye aktarın, sonra kullanıcının devam etmesine izin verin.
$("body").keydown(function(e) {
index = showcaseIds.indexOf(currentItemId);
cacheCurrent = currentItemId;
if (e.keyCode == 37 || e.keyCode == 39){
if(e.keyCode == 39) { // right
currentItemId = showcaseIds[index + 1];
if (currentItemId == null){
$.when(
loadMore()
).then(function(){
index = showcaseIds.indexOf(cacheCurrent);
currentItemId = showcaseIds[index + 1]; // undefined
});
} else {
// continue as normal
}
}
}
});
function loadMore() {
$.when(
$.ajax({
//
})
).then(function(){
pushShowcaseIds();
});
}
Ancak loadMore()
fonksiyon denir sonra $ .when.then yılında currentItemId
tanımsız ve bunu alert
zaman, anında çıkageldi.
Yani, ajax çağrısının bitmesini beklemek yerine, then()
anında çalışıyor gibi görünüyor. Bunun "yuvalanmış" $ ile bir şey olduğunu varsayalım. O zaman() s, ama emin değilim.
loadMore' 'in ifadesini dönen deneyin:' ... did it ' – bumpy
$ .her dönüş! Teşekkürler, cevabını göndermelisiniz – frosty
Harika :) yanıtı yayınlandı – bumpy