javascript - Bootstrap modal 使滚动条在关闭后消失

标签 javascript css twitter-bootstrap meteor twitter-bootstrap-3

我在 StackOverflow 上阅读了很多关于这个主题的解决方案/技巧,但它们似乎都不适合我。

我正在使用模式登录 Meteor(例如,使用 Facebook 登录服务)。并在登录成功时触发回调。

我把它放在我的回调中以关闭模式 - $('#modalSignIn').modal('toggle');

一切正常,只是关闭后页面上没有滚动条。

我得到的一个解决方案来自 here -

.modal-open {
    overflow: scroll;
}

部分原因是即使模式关闭时我也有滚动条。但是,右侧似乎有大约 15px 的填充(前一个滚动条应该在的位置)。在重复打开和关闭时,填充不断增加。

编辑:

这是我的导航模板 -

<template name="_navMenu">
    {{#if isLoggedIn}}
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">My Profile <span class="caret"></span></a>
          <ul class="dropdown-menu" role="menu">
            <li><a href="#">My Profile</a></li>
            <li><a href="#">Edit Profile</a></li>
            <li class="divider"></li>
            <li><a href="#" id="logout-button">Logout</a></li>
          </ul>
        </li>
    {{else}}
        <li><a href="#" data-toggle="modal" data-target="#modalSignUp">SIGN UP</a></li>
        <li><a href="#" data-toggle="modal" data-target="#modalSignIn">LOG IN</a></li>
        <li><button class="btn btn-primary nav-button visible-xs-inline-block">Text Here</button></li>

        <!-- Modal -->
        <div class="modal fade" style="overflow-y: scroll;" id="modalSignIn" tabindex="-1" role="dialog" aria-labelledby="SignInLabel" aria-hidden="true">
          <div class="modal-dialog">
            <div class="modal-content">
              <div class="row">
                  <div class="col-xs-8 col-xs-offset-2">
                    {{> atFormModal state="signIn"}}
                  </div>
              </div>
            </div>
          </div>
        </div>
    {{/if}}
</template>

最佳答案

我遇到了同样的问题。 Bootstrap 在 body 中添加 modal-open 类,但在模态关闭时不会删除。 我解决了只是添加回调:

$('body').removeClass('modal-open');

关于javascript - Bootstrap modal 使滚动条在关闭后消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28643617/

相关文章:

javascript - PHP 动态选框一次滚动一个项目

javascript - 比较数组中的值

javascript - 如何转义“,<和JavaScript中的所有特殊字符

html - 如何保持元素的高度等于 2 行?

javascript - 如何将 select2 与 Meteor 一起使用?

javascript - 无法使用 Ember 更改适配器主机

php - 浏览的文件名未显示在文本框中

html - CSS:调用具有相同属性的任何元素

javascript - Bootstrap 3 - 手动将事件类分配给标题导航项

javascript - 为什么在我的 Bootstrap Tour 过程中所选元素并不总是弹出?