![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 68 Pomógł: 3 Dołączył: 7.12.2009 Ostrzeżenie: (0%) ![]() ![]() |
Znalazłem kod do obsługi mouse scrolla. Trochę nie rozumiem na jakiej zasadzie działa wheelDelta event, a dokładniej jakie wartości przyjmuje, jaki ma zakres...
W tym momencie kod wyświetla na ekranie 1: up jeżeli użyję mouse scrolla w jedną stronę, lub -1: down jeżeli w drugą. Jak zmodfikować kod by dowolnie zwiększyć ten zakres? np. od -n do +n Tak by delta przyjmowała wartości nie tylko 1/-1. Dzięki za pomoc Kod <script type="text/javascript"> var delta = 0; function handle(delta) { var s = delta + ": "; if (delta < 0) s += "down"; else s += "up"; document.getElementById('delta').innerHTML = s; } function wheel(event){ if (!event) event = window.event; if (event.wheelDelta) { delta = event.wheelDelta/120; if (window.opera) delta = -delta; } else if (event.detail) { delta = -event.detail/3; } if (delta) handle(delta); } /* Initialization code. */ if (window.addEventListener) window.addEventListener('DOMMouseScroll', wheel, false); window.onmousewheel = document.onmousewheel = wheel; </script> EDIT: Problem rozwiązany i aż mi głupio, że nie mogłem sobie z tym poradzić. Ale to wczesna pora i człowiek nie myśli jeszcze dobrze. Widząc cały czas 1 na ekranie, gdy kręciłem scrollem, jakoś nie dotarło do mnie, że delta jednak się zmienia za każdym razem od 0 do 1. Więc wystarczy dać s+=delta; Heh... Wiem, wiem, należy mnie wychłostać ![]() Ten post edytował melior 26.03.2010, 08:15:56 |
|
|
![]() ![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 121 Pomógł: 2 Dołączył: 22.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
Znalazłem kod do obsługi mouse scrolla. Trochę nie rozumiem na jakiej zasadzie działa wheelDelta event, a dokładniej jakie wartości przyjmuje, jaki ma zakres... W tym momencie kod wyświetla na ekranie 1: up jeżeli użyję mouse scrolla w jedną stronę, lub -1: down jeżeli w drugą. Jak zmodfikować kod by dowolnie zwiększyć ten zakres? np. od -n do +n Tak by delta przyjmowała wartości nie tylko 1/-1. Dzięki za pomoc Kod <script type="text/javascript"> var delta = 0; function handle(delta) { var s = delta + ": "; if (delta < 0) s += "down"; else s += "up"; document.getElementById('delta').innerHTML = s; } function wheel(event){ if (!event) event = window.event; if (event.wheelDelta) { delta = event.wheelDelta/120; if (window.opera) delta = -delta; } else if (event.detail) { delta = -event.detail/3; } if (delta) handle(delta); } /* Initialization code. */ if (window.addEventListener) window.addEventListener('DOMMouseScroll', wheel, false); window.onmousewheel = document.onmousewheel = wheel; </script> EDIT: Problem rozwiązany i aż mi głupio, że nie mogłem sobie z tym poradzić. Ale to wczesna pora i człowiek nie myśli jeszcze dobrze. Widząc cały czas 1 na ekranie, gdy kręciłem scrollem, jakoś nie dotarło do mnie, że delta jednak się zmienia za każdym razem od 0 do 1. Więc wystarczy dać s+=delta; Heh... Wiem, wiem, należy mnie wychłostać ![]() Pozwolę sobie na odświeżenie tematu. Używam dokładnie tego samego kodu. Niestety przewijanie nie działa i mogę przewinąć albo raz do góry lub na dół. Posiedziałem trochę i nic nie wymyśliłem, w którym miejscu mógłbym dodać s+=delta.. Czy jest ktoś w stanie mi pomóc lub nakierować ? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 09:29 |