JavaScript练习六之仿bootstrap之Popover
来源:互联网 发布:数据库酒店管理系统 编辑:程序博客网 时间:2024/06/06 19:37
前言
bootstrap是目前比较主流的前端开发框架(简称BS),里面有很多很实用的JS小组件,非常有学习及参考价值。本次参考的是popover组件。该组件是基于tooltip的。在tooltip的基础上,该组件还新增提供了标题显示。
感悟
1、该组件基本上是继承于tooltip,所以基本上改动都是围绕着tooltip进行实施。但是借此,也顺便加强了一下对JS面向对象方面的理解。待到后面该套组件稳定起来之后,可以将其单独独立出来做为一个组件,更利于今后调用。
CodeList
//@charset "utf-8" /** * @function : 仿bootstrap的Popover组件(练习) * @author : yinggaozhen * @create : 2016-01-15 * @version : 0.0.0 * @example : * HTML : <button type="button" class="btn btn-default" data-toggle="popover" data-placement="right" title="gaozhen'Js Test">Popover on right</button> * JavaScript : $(function () { $('[data-toggle="tooltip"]').popover() }) */ +function($) { var ext = 'popover'; var POPOVER_DEFAULTOPTIONS = { animation : true, placement : 'top', templete : '<d iv class="popover" role="tooltip"><d iv class="arrow"></div><h 3 class="popover-title"></h 3><di v class="popover-content"></d iv></d iv>', trggier : 'click focus', delay : 0, showtitle : true }; var Popover = function(element, options) { this.init('popover', element, options); }; Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype); Popover.prototype.getDefaultOptions = function() { return POPOVER_DEFAULTOPTIONS; } Popover.prototype.show = function() { this.tip(); this.setGUID(); var actualTop = this.$el.offset().top, actualLeft = this.$el.offset().left; this.$tip.find('.popover-title').html(this.getTitle()); this.$tip.find('.popover-content').html(this.getContent()); this.$tip.addClass(this.options.placement); this.$el.after(this.$tip); var elOffset = this.getCalculatedOffset(this.options.placement, actualLeft, actualTop); this.$tip.attr('popoverid', this.getGUID()) .addClass('fade in') .css('left', elOffset.left).css('top', elOffset.top); if (!this.options.showtitle) this.$tip.find('.popover-title').remove() }; function Plugin(option) { return this.each(function() { var $el = $(this), data = $el.data('gz.popover'); if (!data) $el.data('gz.popover', new Popover($(this), option)); return $el.data('gz.popover'); }) } $.fn[ext] = Plugin; } (jQuery)
0 0
- JavaScript练习六之仿bootstrap之Popover
- bootstrap之popover
- JavaScript练习五之仿bootstrap之Tooltip
- bootstrap和angular-ui-bootstrap(popover之差)
- Bootstrap的js插件之弹出框(popover)
- iPad开发之Popover
- bootstrap系列之六按钮
- bootstrap之仿淘宝商品列表
- Bootstrap学习总结笔记(19)-- 基本插件之Popover提示框
- JavaScript之六:BOM
- python练习册之六
- bootstrap JavaScript 插件 之 模态框
- Bootstrap 学习之(六)------ 字体图标
- HTML笔记(六)bootstrap之img
- 网页练习之仿百度首页
- BootStrap ToolTip , popover
- bootstrap popover稍微修改
- bootstrap popover简单用法
- 总线设备驱动模型---platform篇
- android保存图片到sdcard后,在图片浏览器不能马上显示出来
- 编程的宗派(OOP与FP孰优孰劣)--王垠
- Android 开发绕不过的坑:你的 Bitmap 究竟占多大内存?
- java数组的理解--学习总结
- JavaScript练习六之仿bootstrap之Popover
- C++命名空间
- 如何搭建一个独立博客——简明Github Pages与Hexo教程
- Matlab一次读取多张图片
- 《UNIX环境高级编程》笔记--UNIX域套接字
- a ppt of CRF
- IntelliJ IDEA WINDOW下安装及首次运行(必看)
- 总线设备驱动模型----驱动篇
- Unix环境高级编程学习笔记(十一) 网络IPC:套接字