BootStrap的两种模态框方式


Posted in Javascript onMay 10, 2017

bootstrap的弹出层

bootstrap弹出层有多种触发方式,以下是我用到的几种方式:

1.方法一:button中属性触发

注意:button中的data-target内容应该和要和弹出层中的id保持一致

data-target=”#mymodal-data”——? id=”mymodal-data”
<!--在button上绑定触发弹出层的属性-->
 <button class="btn btn-primary delete" data-toggle="modal"
     data-target="#mymodal-data" data-whatever="@mdo">
      修改
</button>
<!-- 模态弹出窗内容 -->
<div class="modal" id="mymodal-data" tabindex="-1" role="dialog" aria-labelledby="mySmallModalLabel" aria-hidden="true">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal">
          <span aria-hidden="true">×</span>
          <span class="sr-only">Close</span>
        </button>
        <h4 class="modal-title">弹出层标题</h4>
      </div>
      <div class="modal-body">
        <p>弹出层主体内容</p>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
        <button type="button" class="btn btn-primary">保存</button>
      </div>
    </div>
  </div>
</div>

结果:

BootStrap的两种模态框方式

2.方法二:通过js绑定

注意:将button的id和弹出层的id分别赋给 $m_btn和$modal,当$m_btn被点击后$modal弹出。

<button class="btn btn-info" type="button" id="y-modalBtnAdd" > <label >添加</label></button>
<!-- 模态弹出窗内容 -->
<div class="modal" id="y-myModalAdd" tabindex="-1" role="dialog" aria-labelledby="mySmallModalLabel" aria-hidden="true">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal">
          <span aria-hidden="true">×</span>
          <span class="sr-only">Close</span>
        </button>
        <h4 class="modal-title">弹出层标题</h4>
      </div>
      <div class="modal-body">
        <p>通过js绑定button和弹出层触发</p>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
        <button type="button" class="btn btn-primary">保存</button>
      </div>
    </div>
  </div>
</div>
<!--js代码-->
<script type="text/javascript">
  $(function(){
    // dom加载完毕
    var $m_btn = $('#y-modalBtnAdd');  //y-modalBtnAdd是button的id
    var $modal = $('#y-myModalAdd');  //y-myModalAdd是弹出的遮罩层的id,通过这两个id进行绑定
    $m_btn.on('click', function(){
      $modal.modal({backdrop: 'static'});
    });
  });
 </script>

结果:

BootStrap的两种模态框方式

3.方法三:点击表格一行,弹出弹出层

动态给tr标签加弹出的触发属性

<!--表格-->
<table class="table table-bordered " style="width: 400px">
  <thead>
    <tr>
      <th>一</th>
      <th>二</th>
      <th>三</th>
    </tr>
  </thead>
  <tbody class="tableBody">
    <tr>
      <td>one</td>
      <td>two</td>
      <td>three</td>
    </tr>
    <tr>
      <td>four</td>
      <td>five</td>
      <td>six</td>
    </tr>
  </tbody>
</table>
<!-- 模态弹出窗内容 -->
<div class="modal" id="mymodal-data" tabindex="-1" role="dialog" aria-labelledby="mySmallModalLabel" aria-hidden="true">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal">
          <span aria-hidden="true">×</span>
          <span class="sr-only">Close</span>
        </button>
        <h4 class="modal-title">弹出层标题</h4>
      </div>
      <div class="modal-body">
        <p>点击表格一行内容,弹出弹出层</p>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
        <button type="button" class="btn btn-primary">保存</button>
      </div>
    </div>
  </div>
</div>
<!--js代码-->
<script type="text/javascript">
  $(function () {
    $(".tableBody>tr").each(function () {
      $(this).on("click",function () {
        $(this).attr({"data-toggle":"modal","data-target":"#mymodal-data","data-whatever":"@mdo"});
      })
    });
  });
</script>

BootStrap的两种模态框方式 

结果:

BootStrap的两种模态框方式

bootstrap的弹出层在整个屏幕的上半部分,可以将它居中显示。(方法二可以让弹出层居中显示)

$(function(){
    // dom加载完毕
    var $m_btn = $('#y-modalBtnAdd');  y-modalBtnAdd是button的id
    var $modal = $('#y-myModalAdd');  y-myModalAdd是弹出的遮罩层的id,通过这两个id进行绑定 
    // 测试 bootstrap 居中  ,bootstrap的弹出层默认是左右居中,上下则是偏上,此代码将弹出层上下也居中了,但是会抖
            动一下
    $modal.on('shown.bs.modal', function(){
      var $this = $(this);
      var $modal_dialog = $this.find('.modal-dialog');
      var m_top = ( $(document).height() - $modal_dialog.height() )/2;
      $modal_dialog.css({'margin': m_top + 'px auto'});
    });
  });
</script>

以上所述是小编给大家介绍的BootStrap的两种模态框方式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
11款基于Javascript的文件管理器
Oct 25 Javascript
JS 显示当前日期与时间的代码
Mar 24 Javascript
JavaScript获取onclick、onchange等事件值的代码
Jul 22 Javascript
js实现精美的银灰色竖排折叠菜单
May 16 Javascript
jquery实现表单验证并阻止非法提交
Jul 09 Javascript
基于BootStrap Metronic开发框架经验小结【二】列表分页处理和插件JSTree的使用
May 12 Javascript
十大 Node.js 的 Web 框架(快速提升工作效率)
Jun 30 Javascript
vue-star评星组件开发实例
Mar 01 Javascript
详解easyui基于 layui.laydate日期扩展组件
Jul 18 Javascript
利用js-cookie实现前端设置缓存数据定时失效
Jun 18 Javascript
layer.alert自定义关闭回调事件的方法
Sep 27 Javascript
JavaScript面向对象核心知识与概念归纳整理
May 09 Javascript
微信小程序之购物车功能
Sep 23 #Javascript
js canvas实现QQ拨打电话特效
May 10 #Javascript
bootstrap弹出层的多种触发方式
May 10 #Javascript
详解使用vue脚手架工具搭建vue-webpack项目
May 10 #Javascript
微信小程序 支付后台java实现实例
May 09 #Javascript
使用 Vue.js 仿百度搜索框的实例代码
May 09 #Javascript
详解如何将angular-ui的图片轮播组件封装成一个指令
May 09 #Javascript
You might like
php过滤html中的其他网站链接的方法(域名白名单功能)
2014/04/24 PHP
php通过exif_read_data函数获取图片的exif信息
2015/05/21 PHP
discuz图片顺序混乱解决方案
2015/07/29 PHP
Laravel框架在本地虚拟机快速安装的方法详解
2018/06/11 PHP
PHP+swoole+linux实现系统监控和性能优化操作示例
2019/04/15 PHP
jQuery)扩展jQuery系列之一 模拟alert,confirm(一)
2010/12/04 Javascript
javaScript复制功能调用实现方案
2012/12/13 Javascript
JS定时器实例
2013/04/17 Javascript
js中的for如何实现foreach中的遍历
2014/05/31 Javascript
js仿3366小游戏选字游戏
2016/04/14 Javascript
AngularJS创建自定义指令的方法详解
2016/11/03 Javascript
Javascript之面向对象--接口
2016/12/02 Javascript
详解JavaScript数组过滤相同元素的5种方法
2017/05/23 Javascript
vue自定v-model实现表单数据双向绑定问题
2018/09/03 Javascript
Element实现表格嵌套、多个表格共用一个表头的方法
2020/05/09 Javascript
小程序实现多个选项卡切换
2020/06/19 Javascript
vue中v-model对select的绑定操作
2020/08/31 Javascript
Swiper实现导航栏滚动效果
2020/10/16 Javascript
基于Python实现的扫雷游戏实例代码
2014/08/01 Python
使用python判断你是青少年还是老年人
2018/11/29 Python
python标记语句块使用方法总结
2019/08/05 Python
Mac 使用python3的matplot画图不显示的解决
2019/11/23 Python
Python requests模块session代码实例
2020/04/14 Python
jupyter使用自动补全和切换默认浏览器的方法
2020/11/18 Python
为2021年的第一场雪锦上添花:用matplotlib绘制雪花和雪景
2021/01/05 Python
HTML5 客户端数据库简易使用:IndexedDB
2019/12/19 HTML / CSS
SHEIN美国:购买时髦的女性服装
2020/12/02 全球购物
家佳咖啡店创业计划书
2013/12/27 职场文书
另类冲刺标语
2014/06/24 职场文书
飞机制造技术专业求职信
2014/07/27 职场文书
乡镇干部个人整改措施思想汇报
2014/10/10 职场文书
初三英语教学计划
2015/01/23 职场文书
2015年新学期寄语
2015/02/26 职场文书
装饰施工员岗位职责
2015/04/11 职场文书
Python文件的操作示例的详细讲解
2021/04/08 Python
Python网络编程之ZeroMQ知识总结
2021/04/25 Python