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 相关文章推荐
基于jQuery的简单九宫格实现代码
Aug 09 Javascript
jQuery学习笔记 操作jQuery对象 CSS处理
Sep 19 Javascript
判断javascript的数据类型(示例代码)
Dec 11 Javascript
为指定的元素添加遮罩层的示例代码
Jan 15 Javascript
js 赋值包含单引号双引号问题的解决方法
Feb 26 Javascript
node.js应用后台守护进程管理器Forever安装和使用实例
Jun 01 Javascript
使用snowfall.jquery.js实现爱心满屏飞的效果
Jan 05 Javascript
Angularjs 与 bower安装和使用详解
May 11 Javascript
JavaScript中如何判断一个值的类型
Sep 15 Javascript
jackson解析json字符串,首字母大写会自动转为小写的方法
Dec 22 Javascript
解决Vue 项目打包后favicon无法正常显示的问题
Sep 01 Javascript
JS实现公告上线滚动效果
Jan 10 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 会话(session 时间设定)使用入门代码
2008/06/05 PHP
PHP用身份证号获取星座和生肖的方法
2013/11/07 PHP
php无限遍历目录示例
2014/02/21 PHP
javascript+php实现根据用户时区显示当地时间的方法
2015/03/11 PHP
php通过修改header强制图片下载的方法
2015/03/24 PHP
PHP时间戳格式全部汇总 (获取时间、时间戳)
2016/06/13 PHP
PHP简单实现正则匹配省市区的方法
2018/04/13 PHP
动态加载js文件 document.createElement
2006/10/14 Javascript
jQuery添加和删除输入文本框标签代码
2016/05/20 Javascript
手机端 HTML5使用photoswipe.js仿微信朋友圈图片放大效果
2016/08/25 Javascript
在html中引入外部js文件,并调用带参函数的方法
2016/10/31 Javascript
jQuery与JavaScript节点创建方法的对比
2016/11/18 Javascript
ThinkJS中如何使用MongoDB的CURD操作
2016/12/13 Javascript
jQuery插件HighCharts绘制2D饼图效果示例【附demo源码下载】
2017/03/21 jQuery
NodeJS学习笔记之Module的简介
2017/03/24 NodeJs
jQuery插件FusionCharts绘制的3D双柱状图效果示例【附demo源码】
2017/04/20 jQuery
详解JavaScript原生封装ajax请求和Jquery中的ajax请求
2019/02/14 jQuery
微信小程序 wepy框架与iview-weapp的用法详解
2019/04/10 Javascript
详解jQuery中的prop()使用方法
2020/01/05 jQuery
详解关于Vue单元测试的几个坑
2020/04/26 Javascript
Python标准库与第三方库详解
2014/07/22 Python
kNN算法python实现和简单数字识别的方法
2014/11/18 Python
30分钟搭建Python的Flask框架并在上面编写第一个应用
2015/03/30 Python
详解C++编程中一元运算符的重载
2016/01/19 Python
Django重装mysql后启动报错:No module named ‘MySQLdb’的解决方法
2018/04/22 Python
Pycharm远程调试原理及具体配置详解
2019/08/08 Python
详解python常用命令行选项与环境变量
2020/02/20 Python
Django 设置admin后台表和App(应用)为中文名的操作方法
2020/05/10 Python
HTML5实现Notification API桌面通知功能
2016/03/02 HTML / CSS
印尼最大的网上书店:Gramedia.com
2018/09/13 全球购物
毕业生简单求职信
2013/11/19 职场文书
高中自我评价分享
2013/12/05 职场文书
敬老模范事迹
2014/05/21 职场文书
2015年党性分析材料
2014/12/19 职场文书
python可视化大屏库big_screen示例详解
2021/11/23 Python
vue-treeselect的基本用法以及解决点击无法出现拉下菜单
2022/04/30 Vue.js