twitter-bootstrap – Bootstrap模式不会出现在Meteor中

我正试图让Bootsrap的模态工作,但是当我点击按钮时,我得到的是一个黑屏,没有模态对话框出现,我期望它.我正在使用流星.

这是我的代码

<div class="container">
    <h2>Example of creating Modals with Twitter Bootstrap</h2>
    <div class="modal hide fade in" id="example" style="display: none; ">
        <div class="modal-header">
            <a class="close" data-dismiss="modal">×</a>
            <h3>This is a Modal Heading</h3>
        </div>
        <div class="modal-body">
            <h4>Text in a modal</h4>
            <p>You can add some text here.</p>
        </div>
        <div class="modal-footer">
            <a class="btn btn-success" href="#">Call to action</a>
            <a class="btn" data-dismiss="modal" href="#">Close</a>
        </div>
    </div>
    <p><a data-toggle="modal" href="#example" class="btn btn-primary btn-large">Launch
        demo modal</a></p>
</div>

我基本上从http://www.w3resource.com/twitter-bootstrap/modals-tutorial.php获得了代码用于测试目的.

解决方法

我有一个类似的问题.问题是Meteor和Bootstrap如何工作的根本区别. Meteor假设可以随时重新加载标记.如果任何实时变量发生变化,Meteor只会重新加载模板.另一方面,Bootstrap假定模板只加载一次,并在运行时使用javascript进行修改.

发生了什么是流星正在加载我的模态模板.在某些时候我点击某些东西,这会导致该模态出现在javascript中.但是,一瞬间,实时变量会更改,导致模板再次加载.由于模板隐藏了模态,因此它会覆盖刚刚尝试显示模板的javascript.

我通过将模态的内部放在与外部不同的模板中来解决这个问题.外部模板不响应任何实时变量,因此希望永远不会重新加载.

之前:

<template name="modal">      
  <div class="modal hide fade in" id="settings-modal" data-backdrop="false">
    <div class="modal-header">
    ...
</template>

后:

<template name="modal">      
  <div class="modal hide fade in" id="settings-modal" data-backdrop="false">
    {{> modalInner}}
  </div>
</template>      

<template name="modalInner">
  <div class="modal-header">
    ...
</template>

相关文章

BootStrapValidator可以用于完成基于BootStrap搭建的前端UI中的输入验证,由于本插件完全基于BootStrap...
顶求网首页是一个web2.0博客类的网站首页,在该网站中用户可以发表博客,也可以推荐图书给其他用户。所...
一直想改版网站首页的图书展示部分,以前的展示是使用BootStrap的传统的collapse,网页篇幅占用大,也不...
在视窗足够大的时候是没有任何问题的,但是当拖动改变视窗的大小后会发现布局又变乱了,这个问题困扰了...
BootStrap中的tabs控件以其简单易用而很受广大开发者的欢迎。但是,它的样式比较单一,如何才能在其原有...
BootStrap是基于HTML、CSS和JavaScript的框架,使你只需要写简单的代码就可以很快的搭建一个还不错的前...