5

私のページには、次のようないくつかの div があります。

<div style="height:200px; overflow:auto;">
    <div style="height:300px;">
        <!--Lots of text here-->
    </div>
</div>

ユーザーがそれらにカーソルを合わせてスクロール ホイールでスクロールすると、正常にスクロールします。問題は、ユーザーが一番下に到達すると、代わりにページ自体がスクロールを開始することです。

これを停止する方法はありますか (必要に応じて JavaScript を使用します)。これにより、div が一番下までスクロールされた場合でもフォーカスが div に留まり、ユーザーが div にカーソルを合わせていないときにのみページ自体がスクロールされますか?

4

1 に答える 1

2

このデモをチェックしてください: http://jsfiddle.net/zUGKW/1/

コード:

// bind the mousewheel event
$('.myDiv').bind('mousewheel', function(e) {
    // if scroll direction is down and there is nothing more to scroll
    if(e.originalEvent.wheelDelta < 0 && 
    ($(this).scrollTop() + $(this).height()) >= this.scrollHeight) return false;
});
于 2013-05-09T13:30:37.403 に答える