これに関連して他にもいくつかの質問があることは知っていますが(少し前に私からのものを含む)、私が見つけた唯一の解決策を改善する方法を探しています。
マウスホイールを使用して高さを制限してスクロールできるようにしようとしてoverflow: scroll;
<div>
い<div>
ます<div>
.
私のWeb旅行で、私はこのフィドルに出くわしました: http://jsfiddle.net/mrtsherman/eXQf3/33/。残念ながら、データが AJAX 呼び出しから呼び出されたときにこれを機能させることはできません。なぜこれが起こっているのかわかりません。誰かがこの問題を認識している場合は、アドバイスをいただければ幸いです。
ただし、私の質問は、少なくとも機能することがわかった唯一の解決策、つまり onmouseover クラスの追加に関連しているため、少し話題から外れました。
DIV
<div onmouseover="$('html').addClass('noscroll');"
onmouseout="$('html').removeClass('noscroll');"
style="overflow:auto;max-height: 200px;">Data that is long</div>
CSS クラス
html.noscroll
{
position: fixed;
overflow-y: scroll;
width: 100%;
}
私はこのコードを使用して問題なく動作したと思っていましたが、小さなモニターでは、画面の上部にジャンプして戻るという、はるかに厄介な問題が発生することがわかりました。
がトリガーされるとposition: fixed;
、スクロールバーが無効になり、表示されたままになります(これが必要です)が、スクロールバーが再び一番上まで移動し、スクロール可能なdivがページの半分下にあるため、不可能になります使用する。