Поскольку вызов $.ajax
является асинхронным, вы должны поместить свой код в обработчик success
следующим образом:
success: function(results){
// dont load more places until we have few
$('#loadmore').val('0');
if ( results != '[]' )
{
for ( var i in results )
{
places.push( results[i] );
}
}
showNextPlace(); //Moved here
photo_changed = 0; //Moved here
}
Таким образом, ваша привязка клика будет:
$('#skip').click(function(e) {
savePhoto('skip');
return false;
});
Это не сработало, потому что в вашем исходном коде showNextPlace()
и photo_changed=0
выполнялись до того, как savePhoto('skip')
завершил выполнение. (это асинхронный). Он работал с точкой останова, потому что дал savePhoto()
достаточно времени, чтобы закончить.
Надеюсь, это поможет. Приветствия