【问题标题】:How can I disable the scroll bars of a page?如何禁用页面的滚动条?
【发布时间】:2011-04-06 09:34:01
【问题描述】:

如何禁用页面的滚动条。

并禁用此按钮。

【问题讨论】:

  • 从 UI 的角度来看,我根本不喜欢这个问题。如果我无法在您的网页中使用滚轮滚动,我将是一个非常沮丧的用户。你能解释一下为什么要这样做吗?
  • 可能的问题:小屏幕/视口(不是每个显示设备都有 20480x5000 像素,尤其是移动设备;而且不是每个人都使用最大化的浏览器窗口进行冲浪)不会显示滚动条或 i> 您内容的相关部分;另外,如果不启用 JS(例如 NoScript)会发生什么?
  • 如果你去掉滚动条,滚轮问题就消失了,对吧?

标签: javascript jquery css dom scroll


【解决方案1】:

滚动条是一个 CSS 问题。您可以将其添加到您的页面(或 CSS 文件的内部):

<style type="text/css">
html, body {
  overflow: hidden;
}
</style>

【讨论】:

  • 为什么我们要为 html 和 body 都提供它?只给 html 是不够的?
【解决方案2】:

您不能禁用该按钮(或任何其他滚动页面的方法); see this。但是,您可以随时在检测到滚动时使用 scrollTo(0,0)。这可能看起来很难看(页面滚动了一下,然后又跳回来)。

要禁用滚动条,您可以尝试设置html, body { overflow: hidden };我认为某些浏览器可能不支持这一点。

(创建一个适合视口的页面,这样滚动条不会显示出来不是更好吗?)

【讨论】:

    【解决方案3】:
    $(window).scroll(function() {
        scroll(0,0);
    });
    

    【讨论】:

    • 那么,这是 jQuery 吗?您可能希望将其添加为标签。
    【解决方案4】:
    document.body.scroll = "no";
    document.body.style.overflow = 'hidden';
    document.height = window.innerHeight;
    

    应该在大多数浏览器中禁用滚动条。

    见:http://www.eggheadcafe.com/community/aspnet/3/10088543/how-to-disable-document-body-from-scrolling.aspx

    【讨论】:

    • @faresoft 尽管尝试了其中的每一个,您仍然看到滚动条?
    【解决方案5】:

    我正在制作一个移动网站,但我不希望它是一大堆网页,所以我将它制作成一个禁用滚动的页面。我这样做了

       <style>
       html, body {
       overflow: hidden;
       }
       </style>
    

    【讨论】:

    • 您的答案是否比现有答案有所改进?这是一个特定的用例?
    【解决方案6】:

    这有效: * {overflow: hidden} 我在弄清楚它时遇到的一个问题是我在页面上有一个 CSS 下拉(很好地滑过)菜单,当我使用这种方法时它没有显示。我仍在尝试弄清楚如何让下拉菜单启用此功能。

    【讨论】:

      【解决方案7】:

      这将删除您的滚动条。 【不小心弄到了】

      @media screen{        
      body>div#header{        
      position:fixed;        
      }        
      body>div#footer{        
      position:fixed;        
      } `
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-09-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-01-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多