[解決済み] オーバーフローしたDiv内の要素にスクロールするにはどうすればよいですか?
2022-04-23 14:49:15
質問
一度に5つしか表示できないdivの中に、20のリスト項目があります。項目番号10までスクロールし、次に項目番号20までスクロールする良い方法は何でしょうか?すべてのアイテムの高さはわかっています。
その
scrollTo
プラグインがこれを行うのですが、そのソースは深く考えないと超簡単には理解できないものです。
このプラグインは使いたくない。
例えば、2つの要素を受け取る関数があるとします。
$parentDiv
,
$innerListItem
どちらも
$innerListItem.offset().top
また
$innerListItem.positon().top
は、$parentDivの正しいscrollTopを与えてくれます。
解決方法は?
その
$innerListItem.position().top
は実際には相対的なものです。
.scrollTop()
は、その最初の位置づけられた祖先の そのため、正しい
$parentDiv.scrollTop()
の値を確認することから始めます。
$parentDiv
が配置されています。もし、まだ明示的な
position
を使用します。
position: relative
. 要素
$innerListItem
までのすべての祖先と
$parentDiv
は、明示的な位置を持つ必要がありません。これで
$innerListItem
を使っています。
// Scroll to the top
$parentDiv.scrollTop($parentDiv.scrollTop() + $innerListItem.position().top);
// Scroll to the center
$parentDiv.scrollTop($parentDiv.scrollTop() + $innerListItem.position().top
- $parentDiv.height()/2 + $innerListItem.height()/2);
関連
-
[解決済み】ある要素を別の要素に移動させるには?
-
[解決済み] jQueryを使って要素のIDを取得するにはどうすればよいですか?
-
[解決済み] 要素外でのクリックを検出するにはどうすればよいですか?
-
[解決済み] jQueryで要素が非表示になっているかどうかを確認するには?
-
[解決済み] 配列に特定のインデックスで項目を挿入する方法 (JavaScript)
-
[解決済み] jQueryで要素にスクロールする
-
[解決済み] jQueryで複数のクラスを持つ要素を選択するにはどうすればよいですか?
-
[解決済み] チェックボックスのチェック/アンチェックは、jqueryを使用していますか?重複
-
[解決済み】別のウェブページにリダイレクトするにはどうすればいいですか?
-
[解決済み】jQueryでチェックボックスがチェックされているかどうかを確認するにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] jQueryで要素にスクロールする
-
[解決済み] jQuery hasAttrで要素に属性があるかどうかをチェックする【重複あり
-
[解決済み] jQueryでtextareaの値を設定する
-
[解決済み] GoogleのCDNからjQuery UI CSSをダウンロードする
-
[解決済み] jQueryは要素のレンダリングされた高さを取得しますか?
-
[解決済み] jQueryを使用して配列から特定の値を削除する方法
-
[解決済み] jQuery セレクタ。Id Ends With?
-
[解決済み] セレクトボックスの選択項目を設定する
-
[解決済み] Jqueryのコードはヘッダーとフッターのどちらに入れるべきですか?
-
[解決済み] jQueryを使用して文字列から最後の文字を削除する方法は?