Простой ответ был бы заменить $('.button.not-finished').click(function(){})
следующим:
$('.button.not-finished').click(function() {
$(this).addClass('finished');
var $btn = $(this),
$step = $btn.parents('.modal-body'),
stepIndex = $step.index(),
$pag = $('span').eq(stepIndex);
if (stepIndex === 0 || stepIndex === 1 || stepIndex === 2 || stepIndex === 2) {
step1($step, $pag);
} else {
step3($step, $pag);
}
});
stepanim() не имеет смысла сейчас, и вы можете удалить его, если он не используется в другом месте.
ОБНОВЛЕНИЕ 1: Я заметил, что вы сказали, что вы новичок в этом, поэтому я дам немного разъяснений, и, надеюсь, вы сможете это решить в следующий раз. Первое, что нужно отметить, это то, что где-то код запускается, чтобы делать то, что вы хотите. Мы назовем этот код toBeMoved, просто для того, чтобы его было легче объяснить. Единственная проблема заключается в том, что это происходит в неподходящее время (неправильное место в коде). Поэтому найдите код, который запускается, когда вы хотите, или создайте его самостоятельно. Здесь $('.button.not-finished').click(function(){})
существует, и это то, что срабатывает при нажатии кнопки. Затем возьмите toBeMoved и поместите его внутри функции onclick. Последний шаг - удалить все, что теперь не имеет значения.