禁用网页上的滚动并仅在页面部分允许它

时间:2016-08-03 12:35:41

标签: javascript jquery html css

我正在使用一个网页,我正在尝试做的是禁用网页上的scorlling,并使用navbar链接到id之间进行各部分之间的转换。因为我已经使用这个jquery代码

$(document).ready(function() {
    $('.js-scrollTo').on('click', function() { 
        var page = $(this).attr('href'); 
        var speed = 1000;
        $('html, body').animate( { scrollTop: $(page).offset().top }, speed );
        return false;
    });
});

和CSS上的这个

html, body {margin: 0; height: 100%; overflow: hidden}

一切正常,除了一个问题是,当我在一个具有大内容的特定部分我无法在其中滚动时,我想弄清楚的是:如何在部分内部滚动,而无需滚动所有网页

2 个答案:

答案 0 :(得分:1)

如果我已正确理解您的问题,那么在这种情况下您可以执行的操作是将overflow-y:scroll添加到您希望滚动的内容的包装div中。

例如,假设我们有一个带有一些内容的div #test:

<div id="test">
   ... Some content
</div>

然后我们可以简单地应用样式:

#test {
  height: 300px;
  width: 300px;
  overflow-y: scroll;
  background: #ff1000;
}

以下是它的实际应用:http://codepen.io/anon/pen/RRYERR

答案 1 :(得分:1)

您可以将css添加到div: -

yourDiv:hover { overflow: auto; height:desired height }