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 相关文章推荐
window.onload 加载完毕的问题及解决方案(上)
Jul 09 Javascript
利用JQuery的load函数动态加载其它页面的内容的实现代码
Dec 14 Javascript
关于jQuery UI 使用心得及技巧
Oct 10 Javascript
jquery京东商城双11焦点图多图广告特效代码分享
Sep 06 Javascript
jQuery获取radio选中项的值实例
Jun 18 Javascript
使用jquery给新生的th绑定hover事件的实例
Feb 10 Javascript
又一款MVVM组件 构建自己的Vue组件(2)
Mar 13 Javascript
Vue.js仿微信聊天窗口展示组件功能
Aug 11 Javascript
Angular如何在应用初始化时运行代码详解
Jun 11 Javascript
Vue递归实现树形菜单方法实例
Nov 06 Javascript
vue列表单项展开收缩功能之this.$refs的详解
May 05 Javascript
前端如何实现动画过渡效果
Feb 05 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定义数组和使用示例(php数组的定义方法)
2014/03/29 PHP
动态创建的表格单元格中的事件实现代码
2008/12/30 Javascript
jquery中获取id值方法小结
2013/09/22 Javascript
js对象内部访问this修饰的成员函数示例
2014/04/27 Javascript
Node.js中创建和管理外部进程详解
2014/08/16 Javascript
jQuery中scrollLeft()方法用法实例
2015/01/16 Javascript
javascript动态创建表格及添加数据实例详解
2015/05/13 Javascript
JS三级可折叠菜单实现方法
2016/02/29 Javascript
关于List.ToArray()方法的效率测试
2016/09/30 Javascript
js给table赋值的实例代码
2016/10/13 Javascript
基于jQuery实现数字滚动效果
2017/01/16 Javascript
JS FormData上传文件的设置方法
2017/07/05 Javascript
javascript 跨域问题以及解决办法
2017/07/17 Javascript
小程序实现人脸识别功能(百度ai)
2018/12/23 Javascript
JavaScript中十种一步拷贝数组的方法实例详解
2019/04/22 Javascript
angularjs模态框的使用代码实例
2019/12/20 Javascript
python解析中国天气网的天气数据
2014/03/21 Python
实例Python处理XML文件的方法
2015/08/31 Python
Python3.6笔记之将程序运行结果输出到文件的方法
2018/04/22 Python
利用Django提供的ModelForm增删改数据的方法
2019/01/06 Python
Python 实现中值滤波、均值滤波的方法
2019/01/09 Python
Python中sorted()排序与字母大小写的问题
2020/01/14 Python
Python 创建TCP服务器的方法
2020/07/28 Python
Python变量及数据类型用法原理汇总
2020/08/06 Python
pip 20.3 新版本发布!即将抛弃 Python 2.x(推荐)
2020/12/16 Python
关于html字符串正则判断和匹配的具体使用
2019/12/12 HTML / CSS
Madewell美德威尔美国官网:美国休闲服饰品牌
2016/11/25 全球购物
家庭教育先进个人事迹材料
2014/01/24 职场文书
鼓舞士气的口号
2014/06/16 职场文书
学习十八大演讲稿
2014/09/15 职场文书
病人家属写给医院的感谢信
2015/01/23 职场文书
学校食堂管理制度
2015/08/04 职场文书
解决mysql问题:由于找不到MSVCR120.dll,无法继续执行代码
2021/06/26 MySQL
在Spring-Boot中如何使用@Value注解注入集合类
2021/08/02 Java/Android
《雀魂PONG☆》4月1日播出 PV角色设定情报
2022/03/20 日漫
TV动画《史上最强大魔王转生为村民A》番宣CM公布
2022/04/01 日漫