- 浏览: 329438 次
- 性别:
- 来自: 上海
文章分类
最新评论
最近发现一个不错的基于jquery的插件thickBox ,感觉比facebox好用。
做项目中发现facebox如果快速单击两下,容易出现黑屏。而且facebox的框架是用table写的,可能因为table相对div在结构方面更稳定些。如果弹出层里是table布局的,样式就会受到facebox的样式影响,还要重新reset一下。
看了下官方的api,我研究了下,做了个整理。看下图:
附件中index.html是主页,其它页面都是调用页面。点击index页面,就能看到如图的页面。图、按钮、文字都是可以点的。需要点击的标签都要加上class="thickbox"。当页面出现滚动条时,弹出层固定在窗口的正中间不会移动。当弹出层中只是图片时,图片大小会根据当前窗口的大小进行压缩。所有的弹出层都可以按"esc"退出,除了需要点确认的弹出层外,点击弹出层以外的地方都可以关闭弹出层。
1.展示图片(单张):
<a href="images/single.jpg" title="add a caption to title attribute / or leave blank" class="thickbox"> <img src="images/single.jpg" alt="Plant" width="100" height="75" /> </a>
2.展示图片(多张):
<a href="images/plant1.jpg" title="add a caption to title attribute / or leave blank" class="thickbox" rel="flowers"> <img src="images/plant1.jpg" alt="Plant 1" width="100" height="75"/> </a> <a href="images/plant2.jpg" title="add a caption to title attribute / or leave blank" class="thickbox" rel="flowers"> <img src="images/plant2.jpg" alt="Plant 2" width="100" height="75"/> </a> <a href="images/plant3.jpg" title="add a caption to title attribute / or leave blank" class="thickbox" rel="flowers"> <img src="images/plant3.jpg" alt="Plant 3" width="100" height="75"/> </a> <a href="images/plant4.jpg" title="add a caption to title attribute / or leave blank" class="thickbox" rel="flowers"> <img src="images/plant4.jpg" alt="Plant 4" width="100" height="75"/> </a>
这里每个a都要加上rel属性,而且属性值要一样。前后展示图可以通过" > "和" < "来切换
3.弹出层内容在当前页面中时:
<input alt="#TB_inline?height=150&width=400&inlineId=myOnPageContent" title="add a caption to title attribute / or leave blank" class="thickbox" value="Show" type="button"> the paragraph and input below in a ThickBox, or <input alt="#TB_inline?height=155&width=300&inlineId=hiddenModalContent&modal=true" title="add a caption to title attribute / or leave blank" class="thickbox" value="Show hidden modal content" type="button"> <div id="myOnPageContent" style="display:none;"> <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat.</p> <p><select name=""><option>test</option></select></p> </div> <div id="hiddenModalContent" style="display:none;"> <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat.</p> <p style="text-align: center;"><input type="submit" onclick="tb_remove()" value=" Ok " id="Login"/></p> </div>
第一个input点开的弹出层有input框、title和操作按钮以及文字。第二个input点开的弹出层只有文字。
弹出层的大小是根据input的alt属性里的width和height值来定义的。下面讲到的几种情况也是这样来定义弹出层大小的。
4.调用外部文件,弹出层是iframe
<a href="ajaxFrame.PHP?keepThis=true&TB_iframe=true&height=250&width=400" title="add a caption to title attribute / or leave blank" class="thickbox">Example 1</a> <a href="ajaxOverFlow2.html?keepThis=true&TB_iframe=true&height=300&width=500" title="add a caption to title attribute / or leave blank" class="thickbox">Example 2</a> <a href="iframeModal.html?placeValuesBeforeTB_=savedValues&TB_iframe=true&height=200&width=300&modal=true" title="add a caption to title attribute / or leave blank" class="thickbox">Open iFrame Modal</a>
如果弹出层是嵌套在iframe里需要添加“TB_iframe=true"。
第一个是调用ajaxFrame.PHP文件。
第二个是调用ajaxOverFlow2.html文件。
第三个是调用了iframeModal.html文件,隐藏了title和操作按钮。
5.调用外部文件,弹出层不是iframe
<a href="ajaxOverFlow.html?height=300&width=400" title="add a caption to title attribute / or leave blank" class="thickbox">Scrolling content</a> <a href="ajax.PHP?height=220&width=400" class="thickbox" title="add a caption to title attribute / or leave blank">No-scroll content</a> <a href="ajaxLogin.html?height=85&width=250&modal=true" class="thickbox" title="Please Sign In">login (modal)</a> <a href="ajaxTBcontent.html?height=200&width=300" class="thickbox" title="">Update ThickBox content</a>
第一个调用ajaxOverFlow.html文件。
第二个调用ajax.PHP文件。
第三个调用ajaxLogin.html文件,form表单。
第四个调用ajaxTBcontent.html文件,弹出层里再调用newTBcontent.html文件。
发表评论
-
遍历class
2010-11-14 22:03 2055一般国外的网站很注重细节,他们会把菜单或者button做成图片 ... -
简单的新闻滚动
2010-11-09 23:07 1470这里直接用jquey的animate函数做的滚动效果 ... -
上一张下一张
2010-11-09 22:12 3433预览照片的常用功能:上一张下一张 效果图(很喜欢的蒙奇 ... -
自动播放的jQuery幻灯片
2010-10-29 22:23 3178来看下效果图: <script src ... -
EasySlider
2009-11-16 21:58 1649Easy Slider 1.5 - The Easiest j ... -
Cookie Plugin for jQuery
2009-08-09 23:30 2006Cookie Plugin for jQuery ... -
价格过滤条
2009-04-03 10:18 1244写了一个价格过滤条: 重点是按钮的css定位要算好。 只能 ... -
js图片轮换效果(二)
2009-03-13 15:23 4842结构: <ul id="picture& ... -
jquery ui 日历插件(换色+类型)
2009-03-10 16:59 5672抽空把jquery ui 里的日历做了个整理,整合了换色和几 ... -
二级菜单效果(3)
2009-03-07 16:05 1604html代码结构: <li class=&quo ... -
jquery之Image Scroller插件
2009-02-23 21:10 2288jquery之Image Scroller插件 图片滚动插 ... -
jquery学习之—构建功能型表单(二)
2009-02-10 20:45 1421在构建功能型表单(一) 中介绍了一些适用于用户进行文本性输入的 ... -
很炫的图片循环效果(jquery改写版)
2009-02-08 21:18 3401以前我在博客中发表过这个图片循环效果,是用javascript ... -
用animate方法展示大图
2009-02-06 15:44 1328demo中点击按钮后div元素的几个不同属性一同变化 ... -
菜单伸缩动画
2009-02-06 13:41 1581方法: $(document).ready(funct ... -
sexy curls插件
2009-02-06 12:14 1262The sexy curls jquery plugin ... -
facebox插件
2009-01-19 14:03 3301在网上down下facebox1.2版的源码, 重新整理了下( ... -
lightbox插件
2009-01-16 16:58 2260lightbox基于jquery1.3版(附件1) 具 ... -
动态过滤填充input框和用弹出层替换select框
2008-12-23 23:21 3188左图是用keydown事件写的动态过滤填充input框 $ ... -
js图片轮换效果(一)
2008-12-15 21:39 7723常常在各大网站上看到如下图所示的图片轮换效果,有的是用flas ...
相关推荐
本文将详细介绍如何在项目中集成和使用ThickBox插件,包括其基本配置、常见使用场景以及一些进阶技巧。 #### 一、集成ThickBox 首先,确保在项目中引入了jQuery库和ThickBox插件。在HTML文档的`<head>`部分加入...
6. **脚本功能**:thickbox.js和thickbox-compressed.js是Thickbox的JavaScript文件,其中包含了插件的主要逻辑和功能。thickbox-compressed.js是压缩版本,用于减小文件大小,加快页面加载速度。 7. **易用性**:...
JQuery ThickBox插件使用心得与替代方案 ThickBox是一个基于jquery的插件,它允许开发者在页面中创建弹出层,用于展示图片、多图片轮播以及其他HTML内容。尽管它一度被认为是一个实用的工具,但现在不被jquery官方...
ThickBox是一款基于jQuery的轻量级弹出插件,主要包含三个核心文件:`jquery.js`、`thickbox.js`和`thickbox.css`。这些文件协同工作,为网页提供了一种优雅的方式,以全屏或者半透明背景的形式展示图片、内嵌框架、...
使用thickbox,开发者首先需要在网页中引入jQuery库和thickbox插件的CSS与JavaScript文件。然后,可以通过给需要弹出的元素添加特定的类名(如"thickbox")或使用jQuery选择器来触发插件。例如,对于一个链接,我们...
虽然Thickbox是一款独立的插件,但往往需要与其他JavaScript库如jQuery一起使用。确保Thickbox与这些库的兼容性是很重要的,特别是当网站已经在使用其他JavaScript组件时。 8. **性能优化**: 使用Thickbox时,...
首先,要使用Thickbox,你需要在项目中引入jQuery库和Thickbox插件的相关文件。这通常包括`jquery.js`、`thickbox.js`以及相关的CSS样式文件`thickbox.css`。这些文件可以下载后放在你的项目目录中,或者通过CDN链接...
Thickbox是一款流行的JavaScript插件,它允许在当前页面上以弹出窗口的形式展示内容,如图片、HTML页面、IFrame、视频等。...通过实践这些例子,你将能够熟练掌握Thickbox的用法,将其无缝融入到你的Web项目中。
以下是对Thickbox用法的详细说明及示例。 **一、Thickbox的基本用法** 1. **引入库文件** 首先,你需要在你的HTML页面中引入Thickbox的相关文件。这通常包括CSS样式表和JavaScript脚本。例如: ```html ...
ThickBox 是基于 jQuery 用 JavaScript 编写的网页UI对话窗口小部件. 它可以用来展示单一图片, 若干图片, 内嵌...ThickBox 的创作者决定动画应该因人而异, 所以 ThickBox 不再使用动画了. 这是特性吗? 哦, 有人说是呀.
4. **初始化插件**:在文档加载完成后,通过JavaScript调用ThickBox插件,如`$('a.thickbox').thickbox();`。 5. **处理Ajax内容**:如果要加载Ajax内容,需要配置`rel`属性,并指定Ajax请求的URL。 四、示例代码 ...
通过访问这个链接,你可以看到如何在实际项目中应用Thickbox3,包括如何调用插件、配置参数以及如何与jQuery的其他功能结合使用。这个例子包含了一些源文件,意味着你可以下载并研究它们,以便在自己的项目中复制...
3. **初始化 Thickbox**:在页面加载完成后,使用 jQuery 的 `$(document).ready()` 函数来初始化 Thickbox 插件。 4. **配置选项**:可以通过修改 JavaScript 代码中的选项来调整 Thickbox 的行为,如设定过渡效果...
**jQuery插件ThickBox详解** ThickBox是一款流行的jQuery插件,用于创建弹出式窗口,常用于显示图片、HTML内容、IFrame(框架页)等。它为用户提供了一种优雅的方式,以全屏模式展示内容,同时提供了一个可自定义的...
2. `thickbox.js`:Thickbox插件的JavaScript实现文件,包含了所有Thickbox的功能代码。 3. `thickbox.css`:Thickbox的样式表文件,定义了弹出层的外观和布局。 在HTML中,你需要将这些文件链接到你的页面中,像...
- `examples/`:可能包含了一些示例文件,展示了Thickbox的各种用法。 - `license.txt`:许可证文件,描述了Thickbox的使用条款和版权信息。 - `readme.txt`:可能会包含安装、使用和配置的说明。 要使用Thickbox,...
Thickbox是一款流行的JavaScript插件,它允许网页开发者在页面上创建一个弹出式的轻量级框架,用于显示图片、HTML内容、Iframe或者Ajax加载的内容。这个"thickbox3.1.zip"文件包含了Thickbox的3.1版本,它在网页设计...
4. **初始化插件**:如果需要在页面加载后动态生成弹出层,可以使用jQuery的`.thickbox()`方法来初始化。 在实际应用中,Thickbox3.1的压缩包可能包含以下文件: 1. `thickbox.css`:包含Thickbox的默认样式。 2. ...
8. **兼容性**:作为基于jQuery的插件,ThickBox 具有良好的浏览器兼容性,包括对IE6及更高版本的支持。 在使用ThickBox 3_1 时,你需要将库文件(thickbox3.1)解压并包含到你的网页中,通常包括以下文件: - `...
通过深入研究这些实例,你可以掌握Thickbox的基本用法,并将其应用于自己的项目中,提升网站的用户体验。同时,理解Thickbox的工作原理也有助于你学习其他类似的弹窗插件,比如Fancybox、Lightbox等。