P粉8141609882023-08-31 19:12:30
この問題の唯一の解決策は、カスタム スクロールバーを作成することだと思います (ビューポートの上に画像を配置する必要がある場合)
これはあなたのコードに基づいて私が作成したコードです
HTML と CSS を理解できることを願っています 次に、JavaScript の部分を見てみましょう
まず、マウス座標をマッピングします
リーリー関数を呼び出すか、ストップドラッグ変数を変更するイベントリスナーを作成します
リーリー次に、startDrag() 関数を作成します
リーリーこの関数では、ユーザーが現在スクロール バーをドラッグしているため、最初に stopdrag を false に設定します。 次に、インターバルループコードを設定します 座標によると、mouse.y はほとんど試行錯誤です。 制限内かどうかを確認し、制限内であれば移動します 次に、ドラッグしながらスクロールバーの上部の位置を変更します(計算は試行錯誤です) 次に、ウィンドウ クラス div の下部の位置を変更して、ウィンドウ クラス div の位置を変更します (画像自体の位置は変更できないため、ウィンドウ クラス div 全体を移動したくない場合は、その上に別のコンテナを作成できます)。それを見るために ドラッグが停止すると、間隔をクリアします
P粉2918868422023-08-31 00:33:50
この問題を解決してくれた @TylerH に感謝します。問題は、HTML の変換スタイルにあります。削除すると正常にスクロールします。私が見たところ、スクロールをオフセットし、要素だけではなくページ全体を移動しているようです。皆さんの助けに感謝しますが、私はそれを理解しました。