Он отлично работает на рабочем столе. На мобильном телефоне, когда я прикасаюсь к ячейке даты и пытаюсь перетаскивать, экрана начинает прокручивать прокрутку. Но я хочу отключить прокрутку, когда пользователь перетаскивает < /strong>, но также позволил пользователю прокручивать, когда пользователь делает жест прокрутки на прокрутке.
Я уже пытался использовать Touch-Action: нет < /code> в ячейке даты, но она полностью отключает прокрутку.
для вашей информации я использую события указателя для обработки как мыши, так и на касании < /p>
Поэтому я попытался применить Touch-Action: нет динамически, с помощью SetTimeout.
Код: Выделить всё
const isDraggingRef = useRef(false)
const handlePointerDown = (event: React.PointerEvent, date: string) => {
// Initialize drag-related state
dragStartRef.current = date;
dragEndRef.current = date;
// Add pointermove and pointerup listeners globally
document.addEventListener("pointermove", handleMouseMoveGlobal);
document.addEventListener("pointerup", handlePointerUpGlobal);
pointerTimeoutRef.current = setTimeout(() => {
isDraggingRef.current = true;
}, 200); // Adjust the timeout as needed
};
Airbnb уже выполнена. сайт
Подробнее здесь: https://stackoverflow.com/questions/793 ... pplication
Мобильная версия