当我滚动到div内部的底部时,如何阻止页面滚动?

时间:2013-05-09 13:19:14

标签: javascript html scroll

我的页面上有几个看起来像这样的div:

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

当用户将鼠标悬停在它们上方并使用滚轮滚动时,它们可以正常滚动。麻烦的是,当用户到达底部时,页面本身开始滚动。

有没有办法阻止这种情况发生(必要时使用javascript),这样焦点就会停留在div上,即使它已经滚动到底部,而页面本身只在用户没有悬停在div上时滚动?

1 个答案:

答案 0 :(得分: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;
});