[解決済み】スクロールを非表示にせずに無効にする方法は?
2022-04-17 20:05:53
質問
ライトボックスを使用中に、親のhtml/bodyスクロールバーを無効にしようとしています。ここでの主な単語は
無効化
. 私は
ない
で隠したい。
overflow: hidden;
.
その理由は、以下の通りです。
overflow: hidden
は、サイトをジャンプさせ、スクロールがあった領域を占有させます。
スクロールバーを表示したまま無効にすることが可能か知りたいのですが。
解決方法を教えてください。
オーバーレイの下のページを上部に固定することができれば、オーバーレイを開いたときに、以下の設定を行うことができます。
body { position: fixed; overflow-y:scroll }
をクリックすると、右のスクロールバーは表示されますが、コンテンツはスクロールできなくなります。オーバーレイを閉じるときは、これらのプロパティを
body { position: static; overflow-y:auto }
この方法を提案したのは、スクロールイベントを変更する必要がないためです。
更新
また、ちょっとした改良もできます。
document.documentElement.scrollTop
プロパティを、レイヤーが開く直前に javascript で指定すれば、その値を動的に
top
この方法では、あなたが一番上にいるか、すでにスクロールしているかどうかに関係なく、ページはその場所に立つことになります。
Css
.noscroll { position: fixed; overflow-y:scroll }
JS
$('body').css('top', -(document.documentElement.scrollTop) + 'px')
.addClass('noscroll');
関連
-
[解決済み】Facebook Graph API のクエリで with=location を使用すると "Uncaught (in promise) undefined" というエラーが発生する。
-
[解決済み】Uncaught ReferenceError。Reactが定義されていない
-
[解決済み] textareaのresizableプロパティを無効にするにはどうしたらよいですか?
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] jQueryで要素が非表示になっているかどうかを確認するには?
-
[解決済み] 要素を水平方向にセンタリングする方法
-
[解決済み] スクロールバーを隠すが、スクロールはできる状態
-
[解決済み】別のウェブページにリダイレクトするにはどうすればいいですか?
-
[解決済み】jQueryでチェックボックスがチェックされているかどうかを確認するにはどうすればよいですか?
-
[解決済み】オブジェクトからプロパティを削除する(JavaScript)
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Javascript:getElementById対getElementsById(両方が別のページで動作する)。
-
[解決済み】document.getElementByIDは関数ではありません。
-
[解決済み] 解決済み】clearInterval()が動作しない [重複] [重複]
-
[解決済み】Javascriptのコールバック関数がFirefoxで「Callback is not a function」というエラーを投げる
-
[解決済み] [Solved] Uncaught TypeError: nullのプロパティ 'appendChild' を読み取ることができない。
-
[解決済み】Redux TypeError: 未定義のプロパティ 'apply' を読み取れない
-
[解決済み】Kendo Observable Bindingと併用する場合、Kendo Switch Labelsを変更することは可能ですか?[Kendo-UI]です。
-
[解決済み】ETIMEDOUTエラーの対処方法は?
-
[解決済み】スクロールを一時的に無効にする方法は?
-
[解決済み] JavaScriptでスクロールバーの幅を取得する [重複]。