Posiadam taki oto kod na płynne przewijanie strony, niestety "przeskok" jest różny w zależności od przeglądarki (Firefox, Chrome). Da się to jakoś naprawić, ewentualnie jakieś pluginy, które mi to zastąpił? Szukałem sporo, ale żadne parallax scroll czy one page to nie jest to co tutaj:
if (window.addEventListener) window.addEventListener('DOMMouseScroll', wheel, false);
window.onmousewheel = document.onmousewheel = wheel;
function wheel(event) {
var delta = 0;
if (event.wheelDelta) delta = event.wheelDelta / 30;
else if (event.detail) delta = -event.detail / 3;
handle(delta);
if (event.preventDefault) event.preventDefault();
event.returnValue = false;
}
var end = null;
var interval = null;
var goUp = true;
function handle(delta) {
var animationInterval = 20; //lower is faster
var scrollSpeed = 20; //lower is faster
if (end == null) {
end = $(window).scrollTop();
}
end -= 20 * delta;
goUp = delta > 0;
if (interval == null) {
interval = setInterval(function () {
var scrollTop = $(window).scrollTop();
var step = Math.round((end - scrollTop) / scrollSpeed);
if (scrollTop <= 0 ||
scrollTop >= $(window).prop("scrollHeight") - $(window).height() ||
goUp && step > -1 ||
!goUp && step < 1 ) {
clearInterval(interval);
interval = null;
end = null;
}
$(window).scrollTop(scrollTop + step );
}, animationInterval);
}
}