Jquery弹出层插件ThickBox的使用方法


Posted in Javascript onDecember 09, 2014

thickbox是jQuery的一个插件,其作用是弹出对话框、网页框,使用户体验度更加愉悦,下面就来简单介绍它的几种用法。
声明一下:这只是个人的总结记载而已。
准备工作:你需要三个文件:thickbox.js、thickbox.css、jquery.js,网上到处可下

具体使用:

第一步:将这三个文件引入到你要使用thickbox的页面

<script type="text/javascript" src="jquery.js"></script> 

    <script type="text/javascript" src="thickbox.js"></script>

    <link rel="stylesheet" href="thickbox.css" type="text/css" />

第二步:一般简单使用就是给<a>标签和Button添加样式:class=thickbox
还有就是通过thickbox函数调用:如tb_init()、tb_show();见下文。

几种不同用法:

1.点击显示图片:

 <a href="001.jpg" class="thickbox"><img src="001.jpg"/></a>
ok,就这样搞定
2.点击按钮或链接:

<input alt="#TB_inline?height=300&width=400&inlineId=div1" title="shawnliu" class="thickbox" type="button" value="Show" />   

   <a href="#TB_inline?height=155&width=300&inlineId=div2&modal=true" class="thickbox">Show hidden modal content.</a>

   

   <div id="div1" style="display:none">

   <P>

     这是一个非模式对话框。

   </P>

   </div>
   <div id="div2" style="display:none">

   <P>

     这是一个模式对话框。

     <p style="TEXT-ALIGN: center"><INPUT id="Login" onclick="tb_remove()" type="submit" value="  Ok  " /></p>

   </P>

   </div>

说明:给你要使用thickbox的<a>或button添加"#TB_inline?height=300&width=400&",#TB_inline是thickbox固定用法,height和width是显示弹出对话框的大小参数,inlineId是你要显示的标签或组件,modal是模式与非模式的选择,当然你还可以接很多你自定义的参数
3.一般在项目中用得比较多的就是加载form的页面,如添加,编辑在同一个list列表页面,这时我们就可以将添加和编辑都做成thickbox形式,如下图:

Jquery弹出层插件ThickBox的使用方法

怎样做呢一样的,给添加链接加thickbox样式:

<a href="add.shtml?width=300&height=250" class="thickbox">新增</a>
前提是你得将要显示的页面(add.shtml)做好,然后指定你要显示的大小
编辑同样是一样:先将原信息提取出来,再让用户修改:

Jquery弹出层插件ThickBox的使用方法

代码也一样:

<a href="edit.shtml?width=300&height=250&nid=item.nid" class="thickbox">编辑</a>

4.能自己定位到需要用thickbox的元素,不使用样式,可以用函数,如:

<div id="PicList">

<a href="Pic01.jpg"><img src="Pic01s.jpg" border="0"/></a>

<a href="Pic02.jpg"><img src="Pic01s.jpg" border="0"/></a>

</div>
$(function() {

tb_init("#PicList a[img]");});

5.通过ajax加载的页面,thickbox样式会失效,解决办法:
只要在AJAX载入HTML并更新到页面后执行下以下代码:

tb_init('.thickbox');
6.自定义函数调用:
如点击缩图,要显示大图,缩略图URL只不过在大图URL的后缀前加了s:

<div id="PicList">

<img src="Pic01s.jpg" border="0"/>

<img src="Pic01s.jpg" border="0"/>

</div>
$(function() {

$("#PicList img").click(function() {

tb_show("",this.src.substring(0,this.src.length-5)+'.jpg',false);

});});

另外,如果想用其它事件,还可以将click改成你想触发thickbox的事件。

THICKBOX支持一下浏览器:
Windows IE 6.0, Windows IE 7+, Windows FF 2.0.0.6+, Windows Opera 9.0+, Macintosh Safari 2.0.4+, Macintosh FF 2.0.0.6+, Macintosh Opera 9.10……但是据我的使用,IE6还是有点问题的!

Javascript 相关文章推荐
JSON字符串和JSON对象相互转化实例详解
Jan 05 Javascript
React Router基础使用
Jan 17 Javascript
利用Javascript裁剪图片并存储的简单实现
Mar 13 Javascript
详解Angular4 路由设置相关
Aug 26 Javascript
限时抢购-倒计时的完整实例(分享)
Sep 17 Javascript
JS实现快递单打印功能【推荐】
Jun 21 Javascript
vue中使用sessionStorage记住密码功能
Jul 24 Javascript
Vue自定义属性实例分析
Feb 23 Javascript
vue基础之使用get、post、jsonp实现交互功能示例
Mar 12 Javascript
JavaScript变量作用域及内存问题实例分析
Jun 10 Javascript
多页vue应用的单页面打包方法(内含打包模式的应用)
Jun 11 Javascript
使用JavaScript和MQTT开发物联网应用示例解析
Aug 07 Javascript
浅谈JavaScript函数节流
Dec 09 #Javascript
node.js中的console.log方法使用说明
Dec 09 #Javascript
node.js中的console.warn方法使用说明
Dec 09 #Javascript
node.js中的console.info方法使用说明
Dec 09 #Javascript
浅谈JavaScript实现面向对象中的类
Dec 09 #Javascript
node.js中的console.trace方法使用说明
Dec 09 #Javascript
node.js中的console.time方法使用说明
Dec 09 #Javascript
You might like
PHP:风雨欲来 路在何方?
2006/10/09 PHP
配置最新的PHP加MYSQL服务器
2006/10/09 PHP
php 各种应用乱码问题的解决方法
2010/05/09 PHP
基于PHP实现商品成交时发送短信功能
2016/05/11 PHP
PHP fopen中文文件名乱码问题解决方案
2020/10/28 PHP
Stop SQL Server
2007/06/21 Javascript
javascript下阻止表单重复提交、防刷新、防后退
2007/08/17 Javascript
JavaScript写的一个DIV 弹出网页对话框
2009/08/14 Javascript
使用jQuery validate 验证注册表单实例演示
2013/03/25 Javascript
Jqgrid表格随窗口大小改变而改变的简单实例
2013/12/28 Javascript
一个简单的全屏图片上下打开显示网页效果示例
2014/07/08 Javascript
javascript实现 百度翻译 可折叠的分享按钮列表
2015/03/12 Javascript
AngularJS的表单使用详解
2015/06/17 Javascript
jQuery点击其他地方时菜单消失的实现方法
2016/04/22 Javascript
基于Bootstrap实现图片轮播效果
2016/05/22 Javascript
js编写简单的聊天室功能
2017/08/17 Javascript
React手稿之 React-Saga的详解
2018/11/12 Javascript
浅谈webpack性能榨汁机(打包速度优化)
2019/01/09 Javascript
在vue使用clipboard.js进行一键复制文本的实现示例
2019/01/15 Javascript
mpvue+vant app搭建微信小程序的方法步骤
2019/02/11 Javascript
编写更好的JavaScript条件式和匹配条件的技巧(小结)
2019/06/27 Javascript
[03:40]DOTA2英雄梦之声_第01期_炼金术士
2014/06/23 DOTA
[43:47]DOTA2上海特级锦标赛主赛事日 - 4 败者组第四轮#2 MVP.Phx VS Fnatic第一局
2016/03/05 DOTA
Python文件夹与文件的操作实现代码
2014/07/13 Python
远程部署工具Fabric详解(支持Python3)
2019/07/04 Python
Python 70行代码实现简单算式计算器解析
2019/08/30 Python
python实现文字版扫雷
2020/04/24 Python
python def 定义函数,调用函数方式
2020/06/02 Python
Django实现任意文件上传(最简单的方法)
2020/06/03 Python
C++面试题:关于链表和指针
2013/06/05 面试题
“四风”查摆问题自我剖析材料
2014/09/27 职场文书
2014年档案管理工作总结
2014/11/17 职场文书
大学生暑期社会实践的个人总结!
2019/07/17 职场文书
python_tkinter弹出对话框创建
2022/03/20 Python
Python函数对象与闭包函数
2022/04/13 Python
Golang日志包的使用
2022/04/20 Golang