Autor | Zpráva | ||
---|---|---|---|
joe Profil |
#1 · Zasláno: 1. 5. 2011, 04:12:39
Ahoj,
neví někdo, jestli je možné při skrolování nad elementem zabránit skrolování celé stránky? Mám absolutně pozicovaný element s vertikálním posuvníkem (celá stránka má také vertikální posuvník) a pokud točím kolečkem na myši dolu, posuvník se posouvá, ale jakmile dojede na konec, začne se hýbat se stránkou - to je to, co bych chtěl zrušit. A pokud by to skrolování v tom divu fungovalo, i když kurzor bude mimo něj, tak by to bylo ještě lepší :-) Půjde to nějak udělat? Vím jak zrušit skrolování úplně, ale to pak nefunguje nikde... snad jedině, že bych kontroloval offsetTop (nebo v jaké vlastnosti bych to našel) a porovnával ho s výškou obalu a pokud bych byl s posuvníkem dole, zakázal bych skrolování úplně... nebo by to šlo i jinak? |
||
Chamurappi Profil |
#2 · Zasláno: 1. 5. 2011, 05:08:32
Reaguji na joa:
Něco podobného jsem před pár měsíci řešil. Postupoval jsem tak, že jsem při zpracování události onmousewheel rolování na vnitřním elementu obstaral sám (nastavením scrollTop s ohledem na velikost event.wheelDelta ) a vrátil jsem false . Pokud vnitřním elementem rolovat už nešlo, počítal jsem, kolikrát a jak moc bylo kolečkem myši zatočeno během poslední půlsekundy — pokud počet přesáhl určitou mez, vrátil jsem true , a tudíž jsem nechal prohlížeč pohnout nadřazeným elementem (celou stránkou). Uživatel díky tomuto opatření mohl nadále svobodně rolovat, čím chtěl, akorát musel překonat určitý vzdor, pokud narazil na limity u vnitřního elementu.
|
||
joe Profil |
#3 · Zasláno: 1. 5. 2011, 17:38:19
Chamurappi:
Díky za radu, to vypadá dobře a asi to bude nejlepší řešení, jak něco takového udělat. |
||
Časová prodleva: 13 let
|
0