今天给大家分享一款优秀的 jquery 弹出层展示插件 fancybox。它除了能够展示图片之外,还可以展示 flash、iframe 内容、html 文本以及 ajax 调用,我们可以通过 css 来自定义外观。

fancybox 特点:

  1. 可以支持图片、html 文本、flash 动画、iframe 以及 ajax 的支持;
  2. 可以自定义播放器的 css 样式;
  3. 可以以组的形式进行播放;
  4. 如果将鼠标滚动插件(mouse wheel plugin)包含进来的话 fancybox 还能支持鼠标滚轮滚动来翻阅图片;
  5. fancybox 播放器支持投影,更有立体的感觉。

fancybox 使用方法:

首先需要引入 jquery 核心库和 fancybox 插件:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<script src="/fancybox/jquery.fancybox-1.3.4.pack.js"></script>

如果需要用 transition(一些动画效果)你还需要引入以下 js:

<script src="/fancybox/jquery.easing-1.4.pack.js"></script>

如果需要支持鼠标滚轮滚动效果你还需要引入以下 js:

<script src="/fancybox/jquery.mousewheel-3.0.4.pack.js"></script>

然后引入样式表:

<link rel="stylesheet" href="/fancybox/jquery.fancybox-1.3.4.css"/>

之后在页面上添加一个 a 标签:

<a id="single_image" href="image_big.jpg"><img src="data:image_small.jpg" alt=""/></a>

其中 a 标签的 href 中的图片就是我们需要弹层显示的大图。

最后调用 fancybox 方法:

$("#single_image").fancybox();

当然这只能显示一张图片,有时候我们可能需要做个相册之类的多张图片,那么可以用 rel 属性来创建图片组(也就是 fancybox 特点的第三点),如下代码:

<a class="grouped_elements" rel="group1" href="image_big_1.jpg"><img src="data:image_small_1.jpg" alt=""/></a>
<a class="grouped_elements" rel="group1" href="image_big_2.jpg"><img src="data:image_small_2.jpg" alt=""/></a>

调用方法也很简单:

$(".grouped_elements").fancybox();

fancybox 参数:

fancybox 之所以优秀是因为它的参数配置很强大,几乎可以满足我们所有的需要。

属性值 默认值 描述
padding 10 播放器内边距的值
margin 20 播放器外边距的值
opacity false 如果为 true,则 fancybox 在动画改变的时候透明度可以跟着改变
modal false 如果为 true,则 'overlayShow' 会被设成 'true','hideOnOverlayClick','hideOnContentClick','enableEscapeButton','showCloseButton' 会被设成 'false'
cyclic false 如果为 true,相册会循环播放
scrolling 'auto' 设置 overflow 的值来创建或隐藏滚动条,可以设置成 'auto','yes' 或 'no'
width 560 设置 iframe 和 swf 的宽度,如果 'autoDimensions' 为 'false',这也可以设置普通文本的宽度
height 340 设置 iframe 和 swf 的高度,如果 'autoDimensions' 为 'false',这也可以设置普通文本的高度
autoScale true 如果为 true,fancybox 可以自适应浏览器窗口大小
autoDimensions true 在内联文本和 ajax 中,设置是否动态调整元素的尺寸,如果为 true,请确保你已经为元素设置了尺寸大小
centerOnScroll false 如果为 true,当你滚动滚动条时,fancybox将会一直停留在浏览器中心
ajax { } 和 jquery 的 ajax 调用选项一样。注意:'error' 和 'success' 这两个回调事件会被 fancybox 重写
swf {wmode: 'transparent'} swf 的设置选项
hideOnOverlayClick true 如果为 true,则点击遮罩层关闭 fancybox
hideOnContentClick false 如果为 true,则点击播放内容关闭 fancybox
overlayShow true 如果为 true,则显示遮罩层
overlayOpacity 0.3 遮罩层的透明度(范围0-1)
overlayColor '#666' 遮罩层的背景颜色
titleShow true 如果为 true,则显示标题
titlePosition 'outside' 设置标题显示的位置,可以设置成 'outside','inside' 或 'over'
titleFormat null 可以自定义标题的格式
transitionIn,transitionOut 'fade' 设置动画效果,可以设置为 'elastic','fade' 或 'none'
speedIn,speedOut 300 fade 和 elastic 动画切换的时间间隔,以毫秒为单位
changeSpeed 300 切换时 fancybox 尺寸的变化时间间隔(即变化的速度),以毫秒为单位
changeFade 'fast' 切换时内容淡入淡出的时间间隔(即变化的速度)
easingIn,easingOut 'swing' 为 elastic 动画使用 Easing
showCloseButton true 如果为 true,则显示关闭按钮
showNavArrows true 如果为 true,则显示上一张下一张导航箭头
enableEscapeButton true 如果为 true,则启用 esc 来关闭 fancybox
onStart null 回调函数,加载内容时触发
onCancel null 回调函数,取消加载内容后触发
onComplete null 回调函数,加载内容完成后触发
onCleanup null 回调函数,关闭 fancybox 前触发
onClosed null 回调函数,关闭 fancybox 后触发

官网地址:http://fancybox.net/

【jquery】fancybox 是一款优秀的 jquery 弹出层展示插件的更多相关文章

  1. jQuery Dialog弹出层对话框插件

    Dialog.js的相关注释已经添加,可以按照注释,进行相关样式的修改,适用于自定义的各个系统! dialog.js /** * jQuery的Dialog插件. * * @param object ...

  2. Jquery使用mouseenter和mouseleave实现鼠标经过弹出层且可以点击

    <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Jquery使用mousee ...

  3. 【转】10 个很有用的 jQuery 弹出层提示插件

    模态对话框为网站用户提供了快速显示信息的方法,也可以用来提示错误.警告和确认等信息,这里介绍了 10 个弹出模态对话框插件. How to Create a jQuery Confirm Dialog ...

  4. 改善用户体验之wordpress添加图片弹出层效果 (插件 FancyBox)

    下面说说在改善用户体验之wordpress添加图片弹出层效果.效果图如下:   像这篇文章如何在百度搜索结果中显示网站站点logo? 文章内有添加图片,没加插件之前用户点击图片时,是直接_black打 ...

  5. jQuery弹出层layer插件的使用

    引入插件layer 触发弹出层的按钮/链接 <a href="javascript:showPop();"> <img src="" /> ...

  6. [转]jquery Fancybox丰富的弹出层效果

    本文转自:http://www.helloweba.com/view-blog-65.html Fancybox是一款优秀的jquery插件,它能够展示丰富的弹出层效果.前面我们有文章介绍了facyb ...

  7. 一款基于jQuery外观优雅带遮罩弹出层对话框

    今天我们要来分享一款基于jQuery的弹出层对话框插件,该插件包含多种对话框类型,比如提示框.确认框等.更为实用的是,这款jQuery对话框中的按钮事件也可以被我们所捕获,从而相应对话框按钮的各种事件 ...

  8. jQuery 插件开发——PopupLayer(弹出层)

    导读:上次写了一篇关于GridView的插件开发方法,上几天由于工作需要,花了一天左右的事件封装了popupLayer(弹出层)插件.今天有时间就记录一下自己的开发思想与大家分享下,同时也算是对这段时 ...

  9. Fancybox丰富的弹出层效果

    Fancybox是一款优秀的jquery插件,它能够展示丰富的弹出层效果.前面我们有文章介绍了facybox弹出层效果,相比facybox,fancybox显得功能更为齐全,它除了可以加载DIV,图片 ...

随机推荐

  1. Centos 二进制安装node.js

    一.登录node的官网查看最新的稳定版,以及需要下载的Linux版本,你可以有多种Linux安装方式(源码安装,二进制安装等). 二.Node安装及配置 1.创建安装目录:创建目录node.js [r ...

  2. talend hive数据导入到mysql中

    thiveInput->tmap->tMysqloutput thiveInput: tmap: tmysqlOutput:注意编码问题:noDatetimeStringSync=true ...

  3. Java数据结构和算法(六):前缀、中缀、后缀表达式

    前面我们介绍了三种数据结构,第一种数组主要用作数据存储,但是后面的两种栈和队列我们说主要作为程序功能实现的辅助工具,其中在介绍栈时我们知道栈可以用来做单词逆序,匹配关键字符等等,那它还有别的什么功能吗 ...

  4. 关于 NSInvocation

    Invocation   调用的意思. 可想而知NSInvocation 是一个 方法调用 封装的类. 这体现了  面向对象的思想, 及一切皆对象.函数也不例外. 一般编程中,应该很少用到这个. 但是 ...

  5. 解决 SQL Server 所有帐号无 sysadmin 权限,且未启用 SQL Server 身份验证,sa 帐号也未启用的问题

    解决 未启用 SQL Server 身份验证 的问题: 1. 运行 regedit,进入注册表编辑器 2. 打开:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Micro ...

  6. 处理 ASP.NET 中的异常:无法在发送 HTTP 标头之后进行重定向。

    因为在 Global.asax 中的 Application_Error 事件中添加了统一的错误处理,其中会有 Redirect 重定向到错误页面. 但是有可能有些情况下已经进行过其它重定向操作,所以 ...

  7. 开源企业IM-免费企业即时通讯-ENTBOOST V2014.180 Windows版本号正式公布

    ENTBOOST,VERSION 2014.180 Linux版本号公布,主要添加企业IM应用集成功能,完好安卓SDK功能及部分BUG修正. 下一版本号公布时间.7月15日.敬请关注. ENTBOOS ...

  8. 实战mysql分区

    前些天拿到一个表,将近有4000w数据,没有任何索引,主键.(建这表的绝对是个人才) 这是一个日志表,记录了游戏中物品的产出与消耗,原先有一个后台对这个表进行统计.....(这要用超级计算机才能统计得 ...

  9. 【设计模式】装饰器模式与Java Servlet、Spring Session在其中的使用

    简述 装饰器模式,可以通过装饰器类,通过依赖原实现的方式(不使用继承),达到扩展原实现的目的.UML图如下: ServletRequestWrapper于其中的使用 ServletRequestWra ...

  10. android category

    本章节翻译自<Beginning-Android-4-Application-Development>,如有翻译不当的地方,敬请指出. 原书购买地址http://www.amazon.co ...