@ymfront

Как перевести перевести top в translateY?

На странице есть скрипт перетаскивания элемента.
При перетаскивании элементов отслеживается изменение позиционирования:

function positionCalc(){
	let draggableElement = $(".FIkVb9cq");
	let parent = draggableElement.offsetParent();
	let topPosition = draggableElement.position().top;
	let leftPosition = draggableElement.position().left;
	let rightPosition = parent.width() - draggableElement.width() - leftPosition;
	let bottomPosition = parent.height() - draggableElement.height() - topPosition;
	return [topPosition, leftPosition, rightPosition, bottomPosition];
}


Но мне также нужно как-то рассчитывать свойство translateY при top: 50%.

То есть будет кнопка типа "Пересчитать в translateY". И получить значение свойства translateY при top: 50%.

Можно ли это реализовать?
  • Вопрос задан
  • 92 просмотра
Решения вопроса 1
Mike_Ro
@Mike_Ro Куратор тега JavaScript
Python, JS, WordPress, SEO, Bots, Adversting
Можно ли это реализовать?

Можно! Элемент с position: top вычисляет расстояние от верхнего края текущего элемента, до верхнего края ближайшего подходящего (например с position: relative) родителя, либо до viewport. А translate от фактического текущего положения элемента. Теперь включаем логику и применяем методы offsetParent(), height(), position().top итп.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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