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 相关文章推荐
js下通过prototype扩展实现indexOf的代码
Dec 08 Javascript
S2SH整合JQuery+Ajax实现登录验证功能实现代码
Jan 30 Javascript
子页向父页传值示例
Nov 27 Javascript
javascript模拟枚举的简单实例
Mar 06 Javascript
jQuery图片切换插件jquery.cycle.js使用示例
Jun 16 Javascript
js库Modernizr的介绍和使用
May 07 Javascript
表单验证正则表达式实例代码详解
Nov 09 Javascript
利用jquery给指定的table动态添加一行、删除一行的方法
Oct 12 Javascript
浅谈js键盘事件全面控制
Dec 01 Javascript
分享5个好用的javascript文件上传插件
Sep 16 Javascript
详解mpvue小程序中怎么引入iconfont字体图标
Oct 01 Javascript
vue实现图片懒加载的方法分析
Feb 05 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
php5 and xml示例
2006/11/22 PHP
win7 64位系统 配置php最新版开发环境(php+Apache+mysql)
2014/08/15 PHP
PHP模拟asp中response类实现方法
2015/08/08 PHP
PHP实现类似于C语言的文件读取及解析功能
2017/09/01 PHP
PHP基于phpqrcode类生成二维码的方法详解
2018/03/14 PHP
PHP四种排序算法实现及效率分析【冒泡排序,插入排序,选择排序和快速排序】
2018/04/27 PHP
ppk谈JavaScript style属性
2008/10/10 Javascript
用Jquery重写windows.alert方法实现思路
2013/04/03 Javascript
详述JavaScript实现继承的几种方式(推荐)
2016/03/22 Javascript
JS中检测数据类型的几种方式及优缺点小结
2016/12/12 Javascript
搭建简单的nodejs http服务器详解
2017/03/09 NodeJs
jQuery中layer分页器的使用
2017/03/13 Javascript
vue-axios使用详解
2017/05/10 Javascript
详解Angular5 服务端渲染实战
2018/01/04 Javascript
Node.js使用Koa搭建 基础项目
2018/01/08 Javascript
Vue项目中设置背景图片方法
2018/02/21 Javascript
vue-cli 2.*中导入公共less文件的方法步骤
2018/11/22 Javascript
[14:00]DOTA2国际邀请赛史上最长大战 赛后专访B神
2013/08/10 DOTA
[01:31](回顾)杀出重围,决战TI之巅
2014/07/01 DOTA
利用Python批量提取Win10锁屏壁纸实战教程
2018/03/27 Python
python画图把时间作为横坐标的方法
2019/07/07 Python
Django之编辑时根据条件跳转回原页面的方法
2019/08/21 Python
Python Pandas数据分析工具用法实例
2020/11/05 Python
python Xpath语法的使用
2020/11/26 Python
利用css3-animation实现逐帧动画效果
2016/03/10 HTML / CSS
New Balance英国官方网站:始于1906年,百年慢跑品牌
2016/12/07 全球购物
香港迪士尼乐园酒店预订:Hong Kong Disneyland Hotels
2017/05/02 全球购物
Wojas罗马尼亚网站:波兰皮鞋品牌
2018/11/01 全球购物
往来会计岗位职责
2013/12/19 职场文书
和睦家庭事迹
2014/05/14 职场文书
优秀毕业生就业推荐信
2014/05/22 职场文书
副乡长民主生活会个人对照检查材料思想汇报
2014/10/01 职场文书
出国导师推荐信
2015/03/25 职场文书
Python基础详解之邮件处理
2021/04/28 Python
Win10/Win11 任务栏替换成经典样式
2022/04/19 数码科技
Windows server 2012 配置Telnet以及用法详解
2022/04/28 Servers