-
-
Notifications
You must be signed in to change notification settings - Fork 381
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Idea/v9] target-agnostic smooth scrolling engine #508
Comments
is "scrollTo" possible with our current version? even if the event handler isn't available is there still a way to scroll to a specific position or id onClick |
Yes! It can be implemented inside the engine. —— Oh if you meant v8, we already have it: https://github.com/idiotWu/smooth-scrollbar/blob/develop/docs/api.md#scrollbarscrollto |
Hello @idiotWu |
@NilkOne sorry I have been busy with a startup and didn't have much time to work on this project. As a workaround, I'd suggest you override the
smooth-scrollbar/src/scrollbar.ts Lines 212 to 214 in 66c67b8
smooth-scrollbar/src/scrollbar.ts Lines 240 to 254 in 66c67b8
There may be more modifications required. Let me know if you need help :) |
Motivation
Currently, this library focuses on interacting with DOM elements. However, since the smoothening/interpolation logic is independent of DOM, we can create an all-purpose smooth scrolling engine that can be used in DOM, canvas, and anywhere you want to smoothen the scrolling.
Note that the word "scrolling" here is an abstract concept that implies any interaction with mouse wheels or touch screens.
Proposal
In our next version, we want to split the core library into the following three packages:
@smooth-scrollbar/engine
: this package is the target-agnostic scrolling engine that provides the basic smoothening(interpolation) algorithm and the rendering logic. You can think of it as[email protected]
without event handlers. A minimal interface will be:@smooth-scrollbar/event-handlers
: the common event handlers includingwheel
,touch
, and/maybekeyboard
. (I'm not sure if this should be merged into the engine package.)smooth-scrollbar
: the DOM adapter that equals to[email protected]
. We keep using this name for compatibility.The text was updated successfully, but these errors were encountered: