Для Firefox у вас есть событие MozMousePixelScroll
, которое сообщает количество пикселей, которые должны быть прокручены в e.detail
.
window.addEventListener('MozMousePixelScroll', function(e) {
console.log(e.detail);
});
Для многих других браузеров у вас есть событие mousewheel
, которое сообщает e.wheelDeltaY
, но они не в пикселях, и вам придется угадывать сумму, которую нужно прокрутить.
Также посмотрите, как SproutCore обрабатывает прокрутку в своей собственной среде (они также пишут свое собственное представление прокрутки): http://blog.sproutcore.com/scrolling-in-sproutcore/