我从Twitter Bootstrap复制并粘贴了示例代码,在我的Rails 3.2应用程序中创建了一个基本的模态窗口:
<!-- Modal -->
<div id="myModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3 id="myModalLabel">Modal header</h3>
</div>
<div class="modal-body">
<p>One fine body…</p>
</div>
<div class="modal-footer">
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
<button class="btn btn-primary">Save changes</button>
</div>
</div>
<a href= "#myModal" role="button" class="btn" data-toggle="modal">Launch demo modal</a>
它不能工作。这不是由于 jQuery 或脚本未加载,因为 a) 它不需要加载任何 js,因为它使用数据定位和 b) 我检查了控制台,一切都运行得完美。
也不是因为我同时包含了 boostrap.js 和 bootstrap-modal.js ... 我已经检查过了,没有这样做。
我束手无策。它应该只是起作用的。其他 bootstrap js 在网站上工作得很好。
我唯一能想到的是与 .hide 和 .fade 类的定义有关 - 当我将它们移除时,模态框可以正常显示。当我包括它们时,它就根本不会显示出来。
jQuery UI 会对此造成干扰吗?
请询问我您可能需要帮助的任何进一步信息...
更新:
所以我认为我看到了问题,但我不知道如何解决。当我检查控制台时,就在顶部,我看到
element.style {
display: none;
}
现在它以某种方式成为
<div id="myModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" style="display: none;" >
但我不知道为什么它会添加在里面,或者来自哪里。我该如何追踪这个问题?
谢谢
angular-animate
时,我遇到了同样的问题,将其移除后问题得到解决。 - pfried