• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Płynne "gładkie" przewijanie strony

Object Storage Arubacloud
0 głosów
879 wizyt
pytanie zadane 11 stycznia 2017 w JavaScript przez karolek110199 Nowicjusz (190 p.)

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);
		}
	}



 

komentarz 11 stycznia 2017 przez CzikaCarry Szeryf (75,340 p.)
tak btw to w Windowsie 10 u mnie na chromie jest defaultowo płynne przewijanie :D
komentarz 11 stycznia 2017 przez operator Stary wyjadacz (10,920 p.)
Brakuje komentarzy. Co autor miał na myśli?
komentarz 11 stycznia 2017 przez karolek110199 Nowicjusz (190 p.)
Kod z internetu, dlatego bez komentarzy, proponuję przetestować, żeby zobaczyć działanie.

1 odpowiedź

0 głosów
odpowiedź 11 stycznia 2017 przez karolek110199 Nowicjusz (190 p.)
 
Najlepsza
Dla Firefox delta z funkcje wheel musi być pomnożona razy 12

Podobne pytania

0 głosów
1 odpowiedź 229 wizyt
pytanie zadane 26 lutego 2017 w JavaScript przez Kamil Czech Dyskutant (7,700 p.)
0 głosów
1 odpowiedź 217 wizyt
pytanie zadane 4 stycznia 2018 w JavaScript przez Vorex444 Dyskutant (9,610 p.)
0 głosów
1 odpowiedź 998 wizyt
pytanie zadane 31 stycznia 2018 w HTML i CSS przez Hardwell Dyskutant (8,980 p.)

92,536 zapytań

141,377 odpowiedzi

319,455 komentarzy

61,922 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...