Есть ли способ предотвратить прокрутку родителя на «горизонтально» прокручиваемом контейнере при использовании колеса мыHtml

Программисты Html
Anonymous
Есть ли способ предотвратить прокрутку родителя на «горизонтально» прокручиваемом контейнере при использовании колеса мы

Сообщение Anonymous »

У меня есть своего рода горизонтальный контейнер, который можно прокрутить через колесо мыши, что работает нормально, даже если я прокручиваю его, родитель (страница) будет полностью прокручивать вертикально: < /p>

Код: Выделить всё

let last_wheel_timestamp = -1,
last_fast_wheel_timestamp = -1;
const handle_wheel = (e: WheelEvent): boolean => {
// deltaMode == DOM_DELTA_PIXEL
const div = e.currentTarget as HTMLDivElement;
if (options.wheelHorizontal && e.deltaMode == 0)
{
let multiplier = 2;
if (last_wheel_timestamp != -1 && ((last_wheel_timestamp > Date.now() - 600 && last_wheel_timestamp < Date.now() - 20) || (last_fast_wheel_timestamp !== -1 && last_fast_wheel_timestamp > Date.now() - 100)))
multiplier *= 3,
last_fast_wheel_timestamp = Date.now();
else last_fast_wheel_timestamp = -1;
const delta_y = e.deltaY * multiplier;
let target_scroll = div.scrollLeft + delta_y;
target_scroll = Math.min(target_scroll, div.scrollWidth);
div.scrollTo({ left: target_scroll, behavior: "smooth" });
last_wheel_timestamp = Date.now();
}
options.wheel?.(e as any);
return !div.matches(":hover");
};
Я рассмотрел другие вопросы, но они решают проблему вертикально прокручиваемых контейнеров, а не горизонтально прокручиваемые.


Подробнее здесь: https://stackoverflow.com/questions/795 ... ollable-co

Вернуться в «Html»