javascript - setScrollbar() 方法在 modal.js 中实际执行的操作是什么

标签 javascript jquery twitter-bootstrap

我刚刚浏览了 modal.js 的源代码,遇到了以下我很难理解的方法,

  Modal.prototype.setScrollbar = function () {
    var bodyPad = parseInt((this.$body.css('padding-right') || 0), 10)
    if (this.bodyIsOverflowing) this.$body.css('padding-right', bodyPad +     this.scrollbarWidth)
  }

其实上面的方法很简单,

基本上它存储了主体上的当前填充,然后, 检查主体是否溢出,然后应用 padding-right 。

现在我的问题是这个功能的实际或视觉用途是什么?

我已经浏览了 modal.js 中的大多数函数,它们对我来说确实有意义,除了这个函数,我见过的一些函数有非常微妙的效果,所以很难选择,但有了这个函数,即使我无法辨别有或没有它的细微差别。

有人可以详细说明一下吗?我遇到困难的功能可以在 git 上找到。 Line 269 .

谢谢。

亚历山大。

最佳答案

通过将 bodyright-padding 的大小增加滚动条的宽度,可以确保滚动条不会与内容重叠...并且这就是为什么你可能没有注意到它。实际上,只有在不使用它的情况下您才会注意到它(您的内容可能会被滚动条重叠)。

关于javascript - setScrollbar() 方法在 modal.js 中实际执行的操作是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28910597/

相关文章:

javascript - 我想检查 Ember.js 中的所有表行

JQuery 选项卡 Ui 未禁用

javascript - 使用 Css 和 jQuery 在悬停时更改文本

jquery - 为什么 jQuery UI Datepicker 中的箭头会错误地更改日期?

css - Twitter Bootstrap 页脚太低

javascript - 如何使用 Immer 从 reducer 返回初始状态?

javascript - 如何从 Google Places 获取一系列地点的坐标,然后在完成所有操作后使用结果?

css - Bootstrap 媒体列表,如何让元素水平滚动?

javascript - AngularJS 将一个数组放入 $cacheFactory 中

html - 调整视口(viewport)大小时 Bootstrap 出现意外行为