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 select控件操作大全(新增、修改、删除、选中、清空、判断存在等)
Dec 19 Javascript
颜色选择器 Color Picker,IE,Firefox,Opera,Safar
Nov 25 Javascript
nodeType属性返回被选节点的节点类型介绍
Nov 22 Javascript
js利用prototype调用Array的slice方法示例
Jun 09 Javascript
jquery操作checkbox示例分享
Jul 21 Javascript
JS中实现简单Formatter函数示例代码
Aug 19 Javascript
location.hash保存页面状态的技巧
Apr 28 Javascript
JavaScript程序中实现继承特性的方式总结
Jun 24 Javascript
深入研究React中setState源码
Nov 17 Javascript
node实现基于token的身份验证
Apr 09 Javascript
Vue二次封装axios为插件使用详解
May 21 Javascript
详解package.json版本号规则
Aug 01 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新建文件自动编号的思路与实现
2011/06/27 PHP
PHP多维数组指定多字段排序的示例代码
2018/05/16 PHP
php学习笔记之字符串常见操作总结
2019/07/16 PHP
js中关于new Object时传参的一些细节分析
2011/03/13 Javascript
js数组的操作指南
2014/12/28 Javascript
jQuery获得指定元素坐标的方法
2015/04/14 Javascript
JS判断元素是否在数组内的实现代码
2016/03/30 Javascript
详解jQuery的Cookie插件
2016/11/23 Javascript
js实现显示手机号码效果
2017/03/09 Javascript
详谈jQuery中使用attr(), prop(), val()获取value的异同
2017/04/25 jQuery
解决vue-cli中stylus无法使用的问题方法
2017/06/19 Javascript
vue中如何实现变量和字符串拼接
2017/06/19 Javascript
JavaScript实现设置默认日期范围为最近40天的方法分析
2017/07/12 Javascript
Node.js爬取豆瓣数据实例分析
2018/03/05 Javascript
nodejs+mongodb aggregate级联查询操作示例
2018/03/17 NodeJs
详解离线安装npm包的几种方法
2018/11/25 Javascript
javascript实现移动端轮播图
2020/12/09 Javascript
Python使用剪切板的方法
2017/06/06 Python
详解Python 实现元胞自动机中的生命游戏(Game of life)
2018/01/27 Python
python计算列表内各元素的个数实例
2018/06/29 Python
Python文件如何引入?详解引入Python文件步骤
2018/12/10 Python
Python Pywavelet 小波阈值实例
2019/01/09 Python
Python代码块及缓存机制原理详解
2019/12/13 Python
python使用布隆过滤器的实现示例
2020/08/20 Python
java关于string最常出现的面试题整理
2021/01/18 Python
CSS3+JavaScript实现炫酷呼吸效果的示例代码
2020/06/15 HTML / CSS
亿阳信通股份有限公司笔试题(C#)
2016/03/04 面试题
个人投资计划书
2014/05/01 职场文书
治安消防安全责任书
2014/07/23 职场文书
房屋财产继承协议书范本
2014/11/03 职场文书
年终工作总结范文2014
2014/11/27 职场文书
秦始皇兵马俑导游词
2015/02/02 职场文书
2015年班组工作总结
2015/04/20 职场文书
大学生心理健康活动总结
2015/05/08 职场文书
MySQL 百万级数据的4种查询优化方式
2021/06/07 MySQL
MySQL8.0的WITH查询详情
2021/08/30 MySQL