0

我有一个 DIV,overflow:scroll当我滚动 div 并到达底部时,它开始滚动主页。

我希望它滚动主页 - 只是 div。

这可能吗?

http://i.stack.imgur.com/Owuu0.png

图片显示了我不想发生的事情

4

4 回答 4

2

我为 jQuery 编写了这个小插件,并且正在使用它一段时间。它做你想做的事,但不是在 CSS 中。无论如何,也许这是一个解决方案:

(function($) {
    $.fn.privateScroll = function() {
        if ( this.length === 0 ) {
            return this;
        }
        this.bind('DOMMouseScroll mousewheel', function(e) {
                var delta = 0;
                if (typeof e.originalEvent.wheelDeltaY !== 'undefined') { // chrome, safari, opera
                    delta = e.originalEvent.wheelDeltaY;
                } else if (typeof e.originalEvent.wheelDelta !== 'undefined') { // ie
                    delta = e.originalEvent.wheelDelta;
                } else if (typeof e.originalEvent.detail != 'undefined') { // ff
                    delta = e.originalEvent.detail * -20;
                }
                if ( delta !== 0 ) {
                    $(this).scrollTop($(this).scrollTop() - delta );
                    e.preventDefault();
                    return false;
                }
        });
        return this;
    };
})(jQuery);

像这样使用:

jQuery('SELECTOR').privateScroll();

更新:使用同事代码更新以适用于所有浏览器

于 2013-07-02T17:49:11.203 回答
0

尝试使用overflow: auto而不是滚动,看看是否有效。

于 2012-10-21T23:31:40.637 回答
0

我还没有测试过这个,但我相信你可以使用这个 jquery 代码来解决这个问题。

$(document).ready(function() {
   $('INNER DIV SELECTOR').hover(function() {
      $('INNER DIV SELECTOR').scroll(function(e) {
         e.stopPropagation();
      });
   });
});
于 2012-10-22T00:04:32.130 回答