滚动div元素时阻止全页滚动

时间:2017-03-14 07:12:20

标签: javascript jquery html css scroll

我想在滚动div元素时阻止页面滚动到上一页。现在我使用Alvarotrigo的全页滚动,不确定这是否相关。 基本上,有2"页"在这个页面。 "。表响应"在第2页,我已将其设置为溢出:滚动。在该div中向上滚动时,它也会向上滚动到第1页。

我已经尝试了这个,但这不起作用:

$('.table-responsive').on( 'mousewheel DOMMouseScroll', function (e) { 

var e0 = e.originalEvent;
var delta = e0.wheelDelta || -e0.detail;

this.scrollTop += ( delta < 0 ? 1 : -1 ) * 30;
e.preventDefault();  
});

HTML:

<div class="table-responsive">
   <div class="table">
      <thead>TABLE</thead>
      <tbody>...</tbody>
   </div>
</div>

CSS:

.table-responsive {
width: 70%;
text-align: left;
margin-top: 30px;
margin-bottom: 30px;
margin-left: auto;
margin-right: auto;
height: 40vh;
overflow: scroll;
border: 3px solid #fff;
background-color: rgba(0,0,0,0.6); 
}

2 个答案:

答案 0 :(得分:0)

$('.table-responsive').on('mouseover', function(){
  $('body').css('overflow', 'hidden');
}).on('mouseout', function(){
  $('body').css('overflow', 'auto');
});

认为这就是你要找的东西

答案 1 :(得分:0)

.table-responsive {
max-width: 70%;
}
or
.table-responsive {
max-width: 250px;
}