Bootstrap教程JS插件弹出框学习笔记分享


Posted in Javascript onMay 17, 2016

本文主要来学习一下JavaScript插件--弹出框。

案例

为页面内容添加一个小的覆盖层,就像iPad上的效果一样,为页面元素增加额外的信息。

先来看几个简单的静态案例效果图

Bootstrap教程JS插件弹出框学习笔记分享

效果比较简单主要就是静态的弹出的小窗体,分为窗体标题和窗体内容。

<div class="bs-example bs-example-popover">

<div class="popover top">

<div class="arrow">

</div>

<h3 class="popover-title">Popover top</h3>

<div class="popover-content">

<p>Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.</p>

</div>

</div>

<div class="popover right">

<div class="arrow">

</div>

<h3 class="popover-title">Popover right</h3>

<div class="popover-content">

<p>Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.</p>

</div>

</div>

<div class="popover bottom">

<div class="arrow">

</div>

<h3 class="popover-title">Popover bottom</h3>

<div class="popover-content">

<p>Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.</p>

</div>

</div>

<div class="popover left">

<div class="arrow">

</div>

<h3 class="popover-title">Popover left</h3>

<div class="popover-content">

<p>Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.</p>

</div>

</div>

<div class="clearfix">

</div>

</div>

但是我们还是需要给元素设置简单的基本布局

<style type="text/css">

.bs-example-popover .popover {

position: relative; display: block; float: left; width: 240px; margin: 20px;

}

</style>

动态演示

先来看效果图

Bootstrap教程JS插件弹出框学习笔记分享

一个按钮,点击按钮的时候就会弹出右侧的小窗体。

看代码,其实也很简单。

[code]<a id="a2" class="btn btn-lg btn-danger" data-placement="right" data-content="即对拥有矮、胖、穷、丑、矬、呆、撸等属性特征的各种雷人行径及想法表示轻蔑。?潘浚ɑ蛐醋鳌暗跛俊保┛梢运凳怯陕钊嘶啊?潘馈薄ⅰ暗跛馈薄ⅰ暗鹚馈毖荼涠?础!?潘磕小敝饕?侵复蠖喑錾砬迤吨?遥?缦绱寤蛐矶喑鞘械撞阈∈忻窦彝ィ?挥懈?嗟谋尘埃?矶喑踔屑赐QВ??俏窆ぃ?虺闪瞬吞??裨保?虺闪送?赏?埽?诔鞘械母还笾?蟹值靡槐?喔?换蚴钦?小⑽抟涤蚊瘢?墒峭ǔS植豢铣腥希?鋈艘话阕猿莆?杂芍耙嫡摺? title="" href="#" data-original-title="?潘勘疽?> Please Click to toggle popover </a>[code]

就一个a标签,但是赋予了按钮的样式类,然后给与几个属性,主要用于展示弹出框的:

第一个:data-original-title ——标题

第二个:data-content——内容

第三个:data-placement——位置(上下左右top、bottom、left、right)

不过现在如果你来运行,按钮是有了,你点击按钮弹出框被不会出现,原来很简单,就是我们还没有给它初始化,就像上一节中的tooltip一样的。

只需要添加简单的JavaScript代码就可以了。

<script type="text/javascript">

$("#a1").popover();

</script>

四个方向

Bootstrap教程JS插件弹出框学习笔记分享

<div style="margin-left:200px;margin-top:100px;margin-bottom:200px;" class="bs-example tooltip-demo">

<div class="bs-example-tooltips">

<button type="button" class="btn btn-default" data-container="body" data-toggle="popover" data-placement="left" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus."> 左侧弹框 </button>

<button type="button" class="btn btn-default" data-container="body" data-toggle="popover" data-placement="top" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus."> 上方弹框 </button>

<button type="button" class="btn btn-default" data-container="body" data-toggle="popover" data-placement="bottom" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus."> 下方弹框 </button>

<button type="button" class="btn btn-default" data-container="body" data-toggle="popover" data-placement="right" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus."> 右侧弹框 </button>

</div>

</div>

然后用JavaScript来激活

<script type="text/javascript">

$("#a1").popover();

$("[data-toggle=popover]").popover();

</script>

选择性加入的功能

出于性能方面的考虑,工具提示和弹框组件的data属性api是选择性加入的,也就是说你必须自己初始化他们。

弹出框在按钮组和输入框组中使用时,需要额外的设置

当提示框与.btn-group 或 .input-group联合使用时,你需要指定container: 'body'选项(见下面的文档)以避免不需要的副作用(例如,当弹出框显示之后,与其合作的页面元素可能变得更宽或是去圆角)。

在禁止使用的页面元素上使用弹出框时需要额外增加一个元素将其包裹起来

为了给disabled 或.disabled元素添加弹出框时,将需要增加弹出框的页面元素包裹在一个<div>中,然后对这个<div>元素应用弹出框。

用法
通过JavaScript启用弹出框:

$('#example').popover(options)

选项

可以将选项通过data属性或JavaScript传递。对于data属性,需要将选项名称放到data-之后,例如data-animation=""。

Bootstrap教程JS插件弹出框学习笔记分享

方法

$().popover(options)

为一组元素初始化弹出框。

$('#element').popover('show')

显示弹出框。

$('#element').popover('hide')

隐藏弹出框。

$('#element').popover('toggle')

展示或隐藏弹出框。

$('#element').popover('destroy')

隐藏并销毁弹出框。

事件

Bootstrap教程JS插件弹出框学习笔记分享

$('[data-toggle=popover]').on('shown.bs.popover', function (){

alert(1);

})

Bootstrap教程JS插件弹出框学习笔记分享

如果大家还想深入学习,可以点击这里进行学习,再为大家附3个精彩的专题:

 以上就是本文的全部内容,希望对大家学习javascript程序设计有所帮助。

Javascript 相关文章推荐
javascript 支持ie和firefox杰奇翻页函数
Jul 22 Javascript
Javascript在IE下设置innerHTML时出现未知的运行时错误的解决方法
Jan 12 Javascript
jquery实现图片裁剪思路及实现
Aug 16 Javascript
深入理解javascript中defer的作用
Dec 11 Javascript
借助JavaScript脚本判断浏览器Flash Player信息的方法
Jul 09 Javascript
JS实现动态给图片添加边框的方法
Apr 01 Javascript
超赞的jQuery图片滑块动画特效代码汇总
Jan 25 Javascript
AngularJS 购物车全选/取消全选功能的实现方法
Aug 14 Javascript
详解html-webpack-plugin用法全解
Jan 22 Javascript
js与jQuery实现获取table中的数据并拼成json字符串操作示例
Jul 12 jQuery
ant design vue嵌套表格及表格内部编辑的用法说明
Oct 28 Javascript
聊聊JS ES6中的解构
Apr 29 Javascript
Bootstrap组件学习之导航、标签、面包屑导航(精品)
May 17 #Javascript
BootStrap的alert提示框的关闭后再显示怎么解决
May 17 #Javascript
Jquery修改image的src属性,图片不加载问题的解决方法
May 17 #Javascript
使用jQuery Mobile框架开发移动端Web App的入门教程
May 17 #Javascript
jquery获取img的src值的简单实例
May 17 #Javascript
jQuery Mobile框架中的表单组件基础使用教程
May 17 #Javascript
浅谈Javascript数组(推荐)
May 17 #Javascript
You might like
php.ini-dist 和 php.ini-recommended 的区别介绍(方便开发与安全的朋友)
2012/07/01 PHP
基于php使用memcache存储session的详解
2013/06/25 PHP
CodeIgniter框架过滤HTML危险代码
2014/06/12 PHP
php检测文本的编码
2015/07/26 PHP
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
2018/06/13 PHP
IE和Mozilla的兼容性汇总event
2007/08/12 Javascript
js jquery验证银行卡号信息正则学习
2013/01/21 Javascript
关于在IE下的一个安全BUG --可用于跟踪用户的系统鼠标位置
2013/04/17 Javascript
Js注册协议倒计时的小例子
2013/06/24 Javascript
探讨javascript是不是面向对象的语言
2013/11/21 Javascript
JQuery+Ajax无刷新分页的实例代码
2014/02/08 Javascript
jquery.mobile 共同布局遇到的问题小结
2015/02/10 Javascript
jquery表单对象属性过滤选择器实例分析
2015/05/18 Javascript
js检测离开或刷新页面时表单数据是否更改的方法
2016/08/02 Javascript
JSON与js对象序列化实例详解
2017/03/16 Javascript
微信小程序 五星评分的实现实例
2017/08/04 Javascript
微信页面弹出键盘后iframe内容变空白的解决方案
2017/09/20 Javascript
使用pm2部署node生产环境的方法步骤
2019/03/09 Javascript
jquery实现抽奖功能
2020/10/22 jQuery
ES5和ES6中类的区别总结
2020/12/21 Javascript
一个超级简单的python web程序
2014/09/11 Python
Python lambda和Python def区别分析
2014/11/30 Python
tensorflow学习笔记之mnist的卷积神经网络实例
2018/04/15 Python
Python封装原理与实现方法详解
2018/08/28 Python
Python hashlib常见摘要算法详解
2020/01/13 Python
Python更新所有已安装包的操作
2020/02/13 Python
解决Python中导入自己写的类,被划红线,但不影响执行的问题
2020/07/13 Python
HTML5的hidden属性兼容老浏览器的方法
2014/04/23 HTML / CSS
为数据库创建索引都需要注意些什么
2012/07/17 面试题
建筑设计师岗位职责
2013/11/18 职场文书
集团公司总经理岗位职责
2013/12/20 职场文书
机械制造专业个人的自我评价
2013/12/28 职场文书
家长会感言
2015/08/01 职场文书
python实现简易名片管理系统
2021/04/11 Python
Vue-Element-Admin集成自己的接口实现登录跳转
2021/06/23 Vue.js
python通过新建环境安装tfx的问题
2022/05/20 Python