Я могу немного опоздать, но у меня был тот же вопрос, прежде чем я наткнулся на этот вопрос.
Небольшое дальнейшее расследование привело меня к мысли, что лучшим вариантом для захвата прокрутки трекпада будет событие wheel
.
function doScroll(e) {
// positive deltas are top and left
// down and right are negative
// horizontal offset e.deltaX
// vertical offset e.deltaY
console.log(`x:${e.deltaX} y:${e.deltaY}`);
e.preventDefault(); // disable the actual scrolling
}
window.addEventListener("wheel", doScroll, false);
Я подготовил скрипку , которая сообщает вам направление прокрутки и значения смещения, но предотвращает саму прокрутку.
Событие wheel имеет свойство delta, которое (по крайней мере, в Chrome) чувствительно к импульсу и дает вам текущее относительное смещение прокрутки, а не абсолютную позицию прокрутки, доступную в событии scroll
.