現在、カスタム スクロール プラグイン (私が作成) を使用して、タッチ デバイスやデスクトップ ブラウザーで要素をスクロールできるようにするプロジェクトに取り組んでいます。すべてが正しく機能しています (iOS の速度と減速を含む)。
ただし、残っている唯一の問題は、ユーザーがスクロールしたときにスクロールバーの上 (または左) の位置を計算することです。次の式でスクロールバーの高さを計算しました。
Math.round((container.height() / content.height()) * 100);
これはバーの正しい高さを計算しているように見えますが、ユーザーがスクロールするときにスクロールバーの位置をどれだけ移動する必要があるかを計算する数式が必要です。私はGoogleでチェックしましたが、多くの用途を見つけることができませんでした。また、ここでSOを検索し、コメントを歓迎します.
数式で使用できる次のデータがあります。
- コンテナの高さ
- コンテンツの高さ
- 現在のスクロール位置 (
scrollTop
) - スクロールバーの高さ