Hacker News new | ask | show | jobs
by mattstocum 4681 days ago
Especially since NiceScroll isn't very nice. The scrolling is jerky. Leave the OS defaults for scrolling. On OS X, there is an option to keep the scrollbar always visible, and the OS itself decides to do this if you don't have an input device capable of scrolling. Some janky 3rd party scroll library isn't going to know any of this information.
1 comments

> Especially since NiceScroll isn't very nice. The scrolling is jerky.

Interesting, on what devices? We are using NiceScroll for a widget right now and it's very smooth, even on my Nexus 4.

On my MacBook Pro it's bad. The scrolling is jerky and doesn't feel right, like there's too much inertia and too much momentum, and you can't stop it once it's scrolling. On iOS there is to little momentum. There's also no point in it. Safari already scrolls web pages, why re-implement it in javascript? You're also losing new features OS X 10.9 does under the hood, like pre-rendering off-screen content to enable smooth 60fps scrolling. Let the OS do its job.
Yep. It's not enough to maintain 60fps (which, even in 2013, isn't always possible); if you don't want scrolling through a large amount of content to feel weird and unnatural, you really should copy the native acceleration curve, something which I have yet to see done for iOS (even Apple's own JavaScript has screwed this up). Since iOS at least has supported -webkit-overflow-scrolling: touch for years now, there's usually no point.
There is a point of it as inline native scrollbars in a rather small box look absolutely horrible.