jquery - 如何以编程方式使用 jQuery 禁用页面滚动

标签 jquery css scroll

使用 jQuery,我想禁用正文的滚动:

我的想法是:

  1. 设置body{ overflow: hidden;}
  2. 捕获当前的scrollTop();/scrollLeft()
  3. 绑定(bind)body滚动事件,设置scrollTop/scrollLeft为捕获的值。

有没有更好的办法?


更新:

请在 http://jsbin.com/ikuma4/2/edit 查看我的示例及其原因

我知道有人会想“他为什么不直接在面板上使用 position: fixed?”。

请不要建议这个,因为我有其他原因。

最佳答案

这将完全禁用滚动:

$('html, body').css({
    overflow: 'hidden',
    height: '100%'
});

恢复:

$('html, body').css({
    overflow: 'auto',
    height: 'auto'
});

在 Firefox 和 Chrome 上测试过。

关于jquery - 如何以编程方式使用 jQuery 禁用页面滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3656592/

相关文章:

javascript - 如何附加文本和 Bootstrap 日期选择器

jquery - 如何用两栏布局 A4 页面打印试卷?

c# - Firefox + Chrome 表格渲染问题

javascript - jQuery 只向下滚动 DIV 中的元素

c - GtkDrawingArea 与 Cairo - 如何使其可滚动

jquery - 如何防止 jquery 在 bootstrap 4 Accordion 中快速转换时崩溃?

jquery - J 查询 - 在页面之间淡入淡出并使用文本预加载页面

html - 如何保留编号列表的缩进?

css - 使用 imageview 和文本 html 创建按钮

jQuery UI 可排序滚动辅助元素偏移 Firefox 问题