FancyBox 基于 jQuery 的 Lightbox 图片查看器插件 - 资源分享

FancyBox 基于 jQuery 的 Lightbox 图片查看器插件

发布于 2018-04-10 字数 7454 浏览 2121 评论 0

FancyBox 是一款基于 jQuery 开发的类 Lightbox 插件。支持对放大的图片添加阴影效果,对于一组相关的图片添加导航操作按纽,该 LightBox 效果除了能够展示图片之外,还可以展示 iframe 框架里面的内容,可以方便的通过 CSS 自定义外观。

FancyBox 基于 jQuery 的 Lightbox 图片查看器插件

插件特点

  1. 可以支持图片、HTML 文本、Flash 动画、iframe 框架以及 AJAX 加载的内容。
  2. 可以自定义播放器的 CSS 样式
  3. 可以以组的形式进行播放
  4. 如果将鼠标滚动插件(Mouse Wheel Plugin)包含进来的话 Fancybox 还能支持鼠标滚轮滚动来翻阅图片
  5. Fancybox 播放器支持投影,更有立体的感觉

使用方法

1、引入 jQuery 核心库和 Fancybox 插件库

<script src="jquery.min.js"></script>
<script src="/fancybox/jquery.fancybox-1.3.4.pack.js"></script>

可选 – 如果需要用到 Fancy Transition 一些动画效果,你还需要引入以下脚本

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

可选 – 如果需要支持鼠标滚轮滚动效果,你还需要引入以下脚本

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

2、添加样式表文件

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

3、在页面上创建链接元素 和 图片元素

<a id="single_image" href="image_big.jpg">
<img src="image_small.jpg" kesrc="image_small.jpg" alt="FancyBox 基于 jQuery 的 Lightbox 图片查看器插件">
</a>

普通文本

<a id="inline" href="#data" kesrc="#data">
This shows content of element who has id="data"
</a>
<div style="display: none;">
<div id="data">
consectetur adipiscing elit.</div>
</div>

Iframe 框架

<a target="_blank" class="external-link" href="http://www.example?iframe">
This goes to iframe
</a>

或者

<a target="_blank" class="external-link" href="http://www.example">
This goes to iframe
</a>

Ajax 异步加载

<a target="_blank" class="external-link" href="http://www.example/data.php">
This takes content using ajax
</a>

如果你要显示描述信息,可以在链接上加上 title 属性,将描述信息放到 title 属性中。

4、最终的 jQuery 初始化代码

$(document).ready(function() {
  /* 最基本的,使用了默认配置 */
  $("a#single_image").fancybox();
  /* 使用了自定义配置 */
  $("a#inline").fancybox({
    'hideOnContentClick': true
  });
  /* 一下配置支持组播放 */
  $("a.group").fancybox({
    'transitionIn'  :   'elastic',
    'transitionOut' :   'elastic',
    'speedIn'       :   600,
    'speedOut'      :   200,
    'overlayShow'   :   false
  });
});

用 rel 属性标签来创建相册

<a rel="group1" href="image_big_1.jpg">
<img src="image_small_1.jpg" alt="FancyBox 基于 jQuery 的 Lightbox 图片查看器插件">
</a>
<a rel="group1" href="image_big_2.jpg">
<img src="image_small_2.jpg" alt="FancyBox 基于 jQuery 的 Lightbox 图片查看器插件">
</a>

<a rel="group2" href="image_big_3.jpg">
<img src="image_small_3.jpg" alt="FancyBox 基于 jQuery 的 Lightbox 图片查看器插件">
</a>
<a rel="group2" href="image_big_4.jpg">
<img src="image_small_4.jpg" alt="FancyBox 基于 jQuery 的 Lightbox 图片查看器插件">
</a>
$("a.grouped_elements").fancybox();

配置选项

Fancybox 的 API 和配置选项说明

属性名 默认值 简要说明
padding 10 浏览框内边距,和css中的padding一个意思
margin 20 浏览框外边距,和css中的margin一个意思
opacity false 如果为true,则fancybox在动画改变的时候透明度可以跟着改变
modal false 如果为true,则’overlayShow’ 会被设成 ‘true’ , ‘hideOnOverlayClick’, ‘hideOnContentClick’, ‘enableEscapeButton’, ‘showCloseButton’ 会被设成 ‘false’
cyclic false 如果为true,相册会循环播放
scrolling ‘auto’ 设置overflow的值来创建或隐藏滚动条,可以设置成 ‘auto’, ‘yes’, or ‘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’ and ‘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后触发

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

目前还没有任何评论,快来抢沙发吧!

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

2583 文章
29 评论
84935 人气
更多

推荐作者

佚名

文章 0 评论 0

文江

文章 0 评论 0

2012013325

文章 0 评论 0

女中豪杰

文章 2 评论 0