当modal中的.form-control具有焦点时,关闭Bootstrap模式会在Firefox中挂起

时间:2014-09-12 10:38:25

标签: twitter-bootstrap firefox

我正在检查一个好奇的案子。我有一个bootstrap模式包含模态体中的一些输入字段。

而在其他页面上,当模态中的表单字段具有焦点并且我关闭该模态时,没有问题,在此特定页面上发生了一些奇怪的事情:模态开始淡出,直到其不透明度为0.比整个褪色过程似乎停止了:

  • .modal-backdrop仍在那里且可见。
  • css中.modal本身opacity: 0;的内容仍为内联样式display: block;。它躺在/覆盖背景,因此无法点击。
  • 身体已经失去了课程modal-open。因此,它的滚动条再次可见。

由于带有data-dismiss="modal"的按钮或javascript,模态是否关闭并不重要。重要的是

  1. 模态内的.form-control具有焦点。如果我从输入中删除类form-control,则模态将按预期关闭,即使输入具有焦点。如果我在关闭模态之前手动单击其他位置以便从.form-control中移除焦点,则模态将按预期关闭。如果我尝试blur()unfocus()模式中的所有输入,问题仍然存在。
  2. Firefox浏览器,Chrome或IE不会发生
  3. 有趣的是,如果我在模态“挂起”时摆弄Firebug,请选择.modal,查看css并将类.fade的不透明度(为零)更改为例如{0}。 0.1,某些似乎已等待的进程仍在继续,模式设置为display: none;,背景消失。

    将不得不进一步深入研究,因为它只发生在这个页面中。

    但也许有人经历过类似的事情。

2 个答案:

答案 0 :(得分:0)

将.form-control的过渡属性设置为none。这对我有用。

.form-control {
    transition: none !important;
}

答案 1 :(得分:0)

在我的情况下,这是对jasny bootstrap的干扰。关于Github上的这个问题存在一个问题(以及快速解决方案): https://github.com/jasny/bootstrap/issues/293