html5拖动的面板 panel,基于jQuery UI的Bootstrap Panel面板功能增强插件

LobiPanel是一款基于jQuery UI的Bootstrap Panel面板功能增强插件。通过该插件可以为Bootstrap的原生Panel面板增加编辑标题,最大化,最小化,面板拖动关闭面板等功能。

使用方法

使用该Bootstrap面板功能增强插件需要引入jquery,jquery ui相关文件和bootstrap相关文件,以及lobipanel.css和lobipanel.js文件。

HTML结构

LobiPanel最基本的HTML结构如下,它完全是bootstrap标准的panel结构:

Panel title

Lorem ipsum...

初始化插件

在页面DOM元素加载完毕之后,可以通过lobiPanel()方法来初始化该插件。

$(function(){

$('.panel').lobiPanel({

// 配置参数

...

});

});

完成上面的操作之后,就可以得到类似下图的Panel面板。

29d421a235bd783ec0006d448b799759.png

使用面板右上角的图标按钮,你可以执行以下一些操作:

按钮将从文档中移除该Panel面板。注意,这个操作是不可撤销的。

按钮可以使面板全屏打开。

按钮从指定的URL中加载内容到.panel-body中。

按钮可以使面板浮动起来,并可以通过鼠标进行拖拽。再次点击这个按钮就可以使面板回到原来的位置上。

按钮有2个功能:

1、收缩已经展开的面板。

2、最小化该面板。

配置参数

以下所有的参数都可以通过data-*来设置,你只需要将参数的驼峰格式修改为连线格式即可。例如:connectWith参数使用data-*来表示就是data-connect-with。

你也可以在data-*属性中插入一个对象,例如:data-close="{tooltip: 'Something'}"。

参数

类型

默认值

描述

draggable

Boolean

true

面板是否可以拖动。注意,该选项需要jQuery ui draggable的支持

sortable

Boolean

false

面板是否可以排序。注意,该选项需要jQuery ui sortable的支持

connectWith

String

".ui-sortable"

jQuery ui排序插件选项

resize

String

"both"

设置面板缩放的方向,可选值有:"both", "vertical", "horizontal", "none"

minWidth

Integer

200

面板的最小宽度

minHeight

Integer

100

面板的最小高度

maxWidth

Integer

1200

面板的最大宽度

maxHeight

Integer

700

面板的最大高度

loadUrl

String

""

加载内容的URL地址,如果没有提供reload按钮就不会加载任何东西

tooltips

Boolean

true

是否在面板控制按钮上显示tooltips

toggleIcon

String

"glyphicon glyphicon-cog"

下拉菜单切换图标

expandAnimation

Integer

100

扩展到全屏的动画持续时间

collapseAnimation

Integer

100

从全屏收缩回来的动画持续时间

unpin

Object

{

icon : 'glyphicon glyphicon-move',

tooltip : 'Unpin'

}

icon属性是切换拖动按钮的图标,tooltip属性是按钮的提示文本

reload

Object

{

icon : 'glyphicon glyphicon-refresh',

tooltip : 'Reload'

}

icon属性是重新加载按钮的图标,tooltip属性是按钮的提示文本

minimize

Object

{

icon : 'glyphicon glyphicon-minus',

icon2 : 'glyphicon glyphicon-plus',

tooltip : 'Minimize'

}

icon属性是全屏按钮的图标,icon2是收缩按钮的图标,tooltip属性是按钮的提示文本

close

Object

{

icon : 'glyphicon glyphicon-remove',

tooltip : 'Close'

}

icon属性是关闭按钮按钮的图标,tooltip属性是按钮的提示文本

editTitle

Object

{

icon: 'glyphicon glyphicon-pencil',

icon2: 'glyphicon glyphicon-floppy-disk',

tooltip: 'Edit title'

}

方法

可以通过2个方法来调用该插件的方法。

1、你可以获取LobiPanel的对象实例,然后调用方法。

//get the LobiPanel instance

var instance = $('.lobipanel').data('lobiPanel');

//call the methods

instance.unpin();

instance.setPosition(400, 360);

instance.setLoadUrl("htpp://www.example.com");

var position = instance.getPosition();

//method chaining is also available

instance.setSize(400, 400)

.setPosition(400, 360)

.setLoadUrl("htpp://www.example.com")

.load();

2、或者你也可以直接调用方法。

$('.lobipanel').lobiPanel('startLoading');

$('.lobipanel').lobiPanel("setPosition", 400, 360);

var position = $('.lobipanel').lobiPanel("getPosition");

方法

参数

返回类型

描述

isPanelInit

none

Boolean

检查面板是否被初始化。面板被初始化后会带有.lobipanel class和data-inner-id属性

isPinned

none

Boolean

检测面板是否是固定的

pin

none

LobiPanel对象

固定面板

unpin

none

LobiPanel对象

将面板浮动

togglePin

none

LobiPanel对象

将面板在固定和浮动之间切换

isMinimized

none

LobiPanel对象

检测面板是否被最小化

minimize

none

LobiPanel对象

最小化面板

maximize

none

LobiPanel对象

最大化面板

toggleMinimize

none

LobiPanel对象

在最大化和最小化之间切换

isOnFullScreen

none

Boolean

检测面板是否扩展到全屏

toFullScreen

none

LobiPanel对象

将面板扩展到全屏

toSmallSize

none

LobiPanel对象

将面板收缩到最小

toggleSize

none

LobiPanel对象

在全屏和最小面板之间切换

close

none

LobiPanel对象

关闭面板(将面板从文档中移除)

setWidth(width)

width - Integer, REQUIRED new width of the panel

LobiPanel对象

改变面板的宽度,如果宽度超出minWidth和maxWidth之间的范围,将使用minWidth或maxWidth来作为宽度

setHeight(height)

height - Integer, REQUIRED new height of the panel

LobiPanel对象

改变面板的高度,如果高度超出minHeight和maxHeight之间的范围,将使用minHeight或maxHeight来作为高度

setSize(width, height)

width - Integer, REQUIRED new width of the panel

height - Integer, REQUIRED new height of the panel

LobiPanel对象

通过指定的宽度和高度来设置面板的尺寸

getPosition

none

{

x: 'left coordinate',

y: 'top coordinate'

}

获取面板的当前位置

getWidth

none

面板的Integer类型宽度

获取面板的宽度

getHeight

none

面板的Integer类型高度

获取面板的高度

bringToFront

none

LobiPanel对象

如果面板被其它元素遮盖,使用该方法将面板放置在前面

enableDrag

none

LobiPanel对象

使面板可以被拖动,在浮动面板中该方法自动被调用

disableDrag

none

LobiPanel对象

禁止拖动面板

enableResize

none

LobiPanel对象

使面板可以修改尺寸

disableResize

none

LobiPanel对象

禁止面板修改尺寸

startLoading

none

LobiPanel对象

开始加载

stopLoading

none

LobiPanel对象

停止加载

setLoadUrl(url)

url - String , REQUIRED

LobiPanel对象

设置loadUrl属性

load(params)

params - Mixed,OPTIONAL

LobiPanel对象

通过ajax来加载内容到.panel-body中

destroy

none

jQuery元素

销毁LobiPanel实例

startTitleEditing

none

LobiPanel对象

编辑面板的标题

isTitleEditing

none

Boolean

检测面板标题是否在编辑中

cancelTitleEditing

none

LobiPanel对象

取消新编辑的标题,恢复原来的面板标题

finishTitleEditing

none

LobiPanel对象

完成面板标题的编辑

enableTooltips

none

LobiPanel对象

允许在面板控制按钮上显示提示文本

disableTooltips

none

LobiPanel对象

禁止在面板控制按钮上显示提示文本

事件

使用事件:

$('.lobipanel').on('init.lobiPanel', function(ev, lobiPanel){

window.console.log("init event called");

});

$('.lobipanel').on('beforeUnpin.lobiPanel', function(ev, lobiPanel){

window.console.log("Before unpin", lobiPanel);

});

$('.lobipanel').on('onSmallSize.lobiPanel', function(ev, lobiPanel){

window.console.log("On small size", ev, lobiPanel);

});

$('.lobipanel').on('loaded.lobiPanel', function(ev, lobiPanel, result, status, xhr){

window.console.log("Loaded", ev, lobiPanel, result, status, xhr);

});

事件

描述

init.lobiPanel

当面板初始化时调用

beforeUnpin.lobiPanel

面板浮动前被调用

onUnpin.lobiPanel

面板浮动后被调用

beforeClose.lobiPanel

面板被关闭前调用

onClose.lobiPanel

面板被移除后调用

beforeToFront.lobiPanel

面板通过z-index属性被显示时调用

onToFront.lobiPanel

当面板被点击并通过z-index属性被显示时调用

beforePin.lobiPanel

面板被固定前调用

onPin.lobiPanel

面板被固定后调用

beforeMinimize.lobiPanel

面板最小化前调用

onMinimize.lobiPanel

面板最小化后调用

beforeMaximize.lobiPanel

面板最大化前调用

onMaximize.lobiPanel

面板最大化后调用

beforeFullScreen.lobiPanel

面板扩展到全屏前调用

onFullScreen.lobiPanel

面板扩展到全屏后调用

beforeSmallSize.lobiPanel

面板扩展从全屏时尚前调用

onSmallSize.lobiPanel

面板扩展从全屏时尚后调用

beforeLoad.lobiPanel

在面板内容被加载前调用

startLoading.lobiPanel

当通过ajax调用内容时触发

loaded.lobiPanel

当面板内容被加载后触发

resizeStart.lobiPanel

resize操作开始时触发

onResize.lobiPanel

在resize操作期间触发

resizeStop.lobiPanel

在浮动面板resize操作结束时触发

dragged.lobiPanel

在排序结束,DOM元素位置改变后触发

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/358521.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

教你玩转CSS 下拉菜单

目录 基本下拉菜单 实例解析 下拉菜单 下拉内容对齐方式 使用 CSS 创建一个鼠标移动上去后显示下拉菜单的效果。 基本下拉菜单 当鼠标移动到指定元素上时,会出现下拉菜单。 <style>.dropdown {position: relative;display: inline-block;}.dropdown-content {disp…

使线程转储智能化

很久以前&#xff0c;我了解了一个称为Log MDC的东西&#xff0c;我对此非常感兴趣。 我突然能够理解日志文件中发生的所有事情&#xff0c;并指出特定的日志条目&#xff0c;并找出对错&#xff0c;特别是在调试生产中的错误时。 在2013年&#xff0c;我受委托从事一个项目&a…

sqlmap --tamper 绕过WAF脚本分类整理

每当注入的时候看到这个贱贱的提示框&#xff0c;内心有千万只草泥马在奔腾。 但很多时候还是得静下来分析过滤系统到底过滤了哪些参数&#xff0c;该如何绕过。 sqlmap中的tamper给我们带来了很多防过滤的脚本&#xff0c;非常实用&#xff0c;可能有的朋友还不知道怎样才能最…

linux shell if 参数

shell 编程中使用到得if语句内判断参数 –b 当file存在并且是块文件时返回真 -c 当file存在并且是字符文件时返回真 -d 当pathname存在并且是一个目录时返回真 -e 当pathname指定的文件或目录存在时返回真 -f 当file存在并且是正规文件时返回真 -g 当由pathname指定的文件或目录…

计算机算法知识总结,移动笔试知识点之--计算机类-数据结构与算法知识点总结.pdf...

12345612int Push (SeqStackSeqStackSeqStack *s*s*s datatypedatatypedatatype x)x)x){ if s->top MAXLEN>top MAXLEN>top MAXLEN–1–1–1return 0 // 0 datatype Pop SeqStack *selse { s->top { datatype x;s->data[s->top]x>top]x>top]x // x if …

教你玩转CSS 提示工具(Tooltip)

如何使用 HTML 与 CSS 来创建提示工具。 提示工具在鼠标移动到指定元素后触发 基础提示框(Tooltip) 提示框在鼠标移动到指定元素上显示: <style>/* Tooltip 容器 */.tooltip {position: relative;display: inline-block;border-bottom: 1px dotted black; /* 悬停元素…

table 首先冻结_首先记录异常的根本原因

table 首先冻结Logback日志库的0.9.30版本带来了一个很棒的新功能&#xff1a;从根&#xff08;最内部&#xff09;异常而不是最外部异常开始记录堆栈跟踪。 当然&#xff0c;我的激动与我贡献了此功能无关。 用塞西尔德米勒&#xff08;Cecil B. de Mille&#xff09; 的话来形…

Spring Boot框架敏感信息泄露的完整介绍与SRC实战(附专属字典与PoC)

转载于&#xff1a;https://www.freebuf.com/vuls/289710.html #前言##Spring Boot框架介绍Spring框架功能很强大&#xff0c;但是就算是一个很简单的项目&#xff0c;我们也要配置很多东西。因此就有了Spring Boot框架&#xff0c;它的作用很简单&#xff0c;就是帮我们自动配…

php html邮件,php发送HTML邮件

PHP 发送HTML邮件需要实现php自动发邮件&#xff0c;原本希望调用Jmail组件实现的&#xff0c;但是发送中文内容的时候&#xff0c;在邮件正文后面总是多出一串乱码&#xff0c;另我很纠结&#xff0c;在网上找了半天也没有能找到原因&#xff0c;无奈之下找了一个socket实现的…

教你玩转CSS响应式设计

目录 什么是 Viewport? 设置 Viewport CSS 网格视图 什么是网格视图? 响应式网格视图 CSS 媒体查询 添加断点

从外网Thinkphp3日志泄露到杀入内网域控 - 红队攻击之域内靶机渗透实战演练

1.简要描述 这个工具写完有一段时间了&#xff0c;看网上目前还没有一个thinkphp的漏洞集成检测工具&#xff0c;所以打算开源出来。 2.代码结构 插件化思想&#xff0c;所有的检测插件都plugins目录里&#xff0c;TPscan.py主文件负责集中调度。 插件目录: ThinkPHP 用户…

使用WildFly 9和Jolokia监视DevOps样式

DevOps是当今最热门的话题之一。 而且围绕它的主题范围很广&#xff0c;因此很难真正找到完整的描述或涵盖体面粒度的所有内容。 可以肯定的一件事&#xff1a;最重要的部分之一是提供正确的度量标准和信息以监视应用程序。 Java EE和JMX 监视Java EE服务器的标准方法是JMX。 …

深刻理解Servlet运行机制和生命周期

servlet 运行在servlet 容器中,其生命周期由容器来管理。servlet 的生命周期通过 javax.servlet.Servlet接口中的init(),servce(),和destory();方法表示。1&#xff0c;加载和实例化servlet 容器负责加载和实例化servlet 当容器启动或在容器中检测到需要这个servlet来响应一个请…

太原师范学院计算机二级报名,山西计算机等级考试报名地点

2010年下半年全国计算机等级考试时间是2010年9月18日至22日&#xff0c;第一天上午考笔试&#xff0c;上机考试从笔试的当天下午开始(一级从上午开始)。2010年下半年全国计算机等级考试报名时间已经开始&#xff01;如果您是在校生&#xff0c;去学校相关报名处报名最方便&…

教你玩转CSS 图像透明/不透明

目录 图像的透明度 - 悬停效果 透明的盒子中的文字 使用CSS很容易创建透明的图像。 注意:CSS Opacity属性是W3C的CSS3建议的一部分。 img{opacity:0.4;filter:alpha(opacity=40); /* IE8 及其更早版本 */}img:hover{opacity:1.0;filter:alpha(opacity=100); /* IE8 及其更…

QQ聊天记录恢复、迁移教程(改变默认存储位置、个人文件夹保存位置)

方法一&#xff1a;适用于将原QQ聊天记录存储位置迁移至非系统盘 1、 在想要存储的区域新建文件夹&#xff0c;如&#xff1a; E:\099 Chat Data\Tencent Files\。 2、 打开电脑QQ&#xff0c;设置——文件管理。 3、 点击浏览&#xff0c;选择099 Chat Data下的Tencent Files…

进程的逻辑设备如何与一个物理设备建立对应的关系?

逻辑设备与物理设备的联系通常是由操作系统命令语言中提供的信息实现的。 1、 软通道实现设备独立性。使用高级语言提供的指派语句&#xff0c;通过指派一个逻辑设备名来定义一个设备或文件。如fd open(“/dev/lp”,mode) 2、 通过作业说明书实现设备独立性。 3、 &#xf…

教你玩转CSS 精灵图/雪碧图

目录 精灵图/雪碧图 图像拼合 - 简单实例 图像拼合 - 创建一个导航列表 图像拼合s - 悬停效果 精灵图/雪碧图 精灵图/雪碧图就是图像拼合 也就是单个图像的集合。 有许多图像的网页可能需要很长的时间来加载和生成多个服务器的请求。 使用图像拼合会降低服务器的请求数量…

html type=text/css,type=text/css 有什么用啊 ?

用处是告诉浏览器&#xff0c;这段标签内包含的内容是css或text&#xff0c;也就是说如果某种浏览器(特别是wap等手机浏览器械、)不能识别css的&#xff0c;会将代码认为text&#xff0c;从而不显示也不报错。type->类型,这里是style的属性text/css ->文本/css,即css文本…

记一次应急响应到溯源入侵者

文本转载于&#xff1a;https://www.freebuf.com/articles/web/289450.html 1. 前言今年的某月某日&#xff0c;系统监测到客户的一企业官网www.******.com遭到了网页篡改&#xff0c;经过人工确认将浏览器的UA替换为百度UA后访问网站&#xff0c;此时网站链接自动跳转至赌博类…