iScroll finally got its very own domain. Full documentation can be found on iscrolljs.com.
It works on desktop, mobile and smart TV. It has been vigorously optimized for performance and size so to offer the smoothest result on modern and old devices alike.
iScroll does not just scroll. It can handle any element that needs to be moved with user interaction. It adds scrolling, zooming, panning, infinite scrolling, parallax scrolling, carousels to your projects and manages to do that in just 4kb. Give it a broom and it will also clean up your office.
Even on platforms where native scrolling is good enough, iScroll adds features that wouldn’t be possible otherwise. Specifically:
- Granular control over the scroll position, even during momentum. You can always get and set the x,y coordinates of the scroller.
- Animation can be customized with user defined easing functions (bounce, elastic, back, …).
- You can easily hook to a plethora of custom events (onBeforeScrollStart, onScrollStart, onScroll, onScrollEnd, flick, …).
- Out of the box multi-platform support. From older Android devices to the latest iPhone, from Chrome to Internet Explorer.
We’ve gone so far… Can you believe all this started in 2008. Yeah, it’s 6 years already.
The script has become much more than a simple scroller, but the original (current) structure is too tight to handle all the things I wish the iScroll would be capable of.
That’s why I’m trying to build a completely refactored version, it might end up into a new project (ie: not iScroll), I don’t know just yet.
The new code would be based on modules and pluging and adding new features would be way easier than it is now.
Worry not, iScroll 5 as it is now will continue to get updates and bug fixes, but stay tuned for future development, being that iScroll 6 or a new project.
If this script saved your day and you wish to support future developments you may consider sending some funds via PayPal, Flattr or BitCoin (wallet: