fruity4pie
@fruity4pie
A

Как выполнить функцию после функции .click() ??

$(".text-label").click(function(){

			$(".text-label").not($(this)).removeClass("clicked").addClass("hiddenCustom");
			$(this).addClass("clicked").removeClass("hiddenCustom");
			var index= $(".text-label").index($(this));
			rotateTo(index);

			let top = $(this).position().top;
			let left = $(this).position().left;
			$(this).next().animate({
				"top": `${top+40}px`,
				"left": `${left}px`
			}
		})


После клика вращается шар и позиция некоторых точек на шаре изменяется, в итоге left и top точек на шаре не те, что нужны, как выполнить
$(this).next().animate({
				"top": `${top+40}px`,
				"left": `${left}px`
			}
после клика на ".text-label" и передать нужные значения left и top ?
  • Вопрос задан
  • 114 просмотров
Пригласить эксперта
Ответы на вопрос 1
@sapfear
Приведенный код и так выполнится по событию click. Если нужно дождаться окончания вращения (которое, видимо, происходит в rotateTo), то нужно передать callback в rotateTo.

rotateTo(index, function() {
  ...
  $(this).next().animate({
        "top": `${top+40}px`,
        "left": `${left}px`
      }
}

а сама rotateTo будет чтото вроде
function rotateTo(index, callback) {
  ... do something

  if(callback) callback();
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы