modal是Bootstrap提供的一个“窗口组件”,可以配合js实现弹出窗口的效果。
modal的class是“modal”,其中必须包含三个div部分,属性分别问modal-header,modal-body,modal-footer.
同时modal可以用来放置注册表单,示例如下:
<section>
<div class="row">
<div class="span12">
<form class="modal form-horizontal" method="post" action="http://localhost">
<div class="modal-header">
<h1>Header</h1>
</div>
<div class="modal-body">
<fieldset>
<div class="control-group">
<label class="control-label" for="username">Username:</label>
<div class="controls">
<input type="text" name="username">
</div>
</div>
<div class="control-group">
<label class="control-label" for="password">Password:</label>
<div class="controls">
<input type="password" name="password">
</div>
</div>
</fieldset>
</div>
<div class="modal-footer">
<input type="submit" class="btn btn-primary" value="Submit!"></button>
</div>
</form>
</div>
</div>
</section>
这需要让modal的div带有属性hide和fade,指定id。并且一开始的stype是display:none以便隐藏同时还需要一个用来控制弹出的按钮,这个按钮必须有data-toggle="modal"的元素,href=modal的id。
如果想要在弹出表单中加入关闭按钮,则需要让按钮带有data-dismiss="modal"的属性。这样改造完成的页面代码:
<section>
<a data-toggle="modal" href="#regModal" class="btn btn-primary">show!</a>
<div class="row">
<form id="regModal" class="modal hide fade form-horizontal" method="post" action="http://localhost" style="display:none">
<div class="modal-header">
<h1>Header</h1>
</div>
<div class="modal-body">
<fieldset>
<div class="control-group">
<label class="control-label" for="username">Username:</label>
<div class="controls">
<input type="text" name="username">
</div>
</div>
<div class="control-group">
<label class="control-label" for="password">Password:</label>
<div class="controls">
<input type="password" name="password">
</div>
</div>
</fieldset>
</div>
<div class="modal-footer">
<input type="submit" class="btn btn-primary" value="Submit!">
<input type="button" class="btn" value="Close!" data-dismiss="modal">
</div>
</form>
</div>
</section>
当然既然这东西利用了js,也就能用js打开。一句话⋯⋯$("#regModal").modal()
————个人觉得用js方式打开比较好⋯⋯便于修改⋯⋯反正装上jq是必然。就不在乎这点儿代码量了
同时modal这个plugin提供了一系列的事件等等。。。不多说了⋯⋯