图片预览插件 fancyBox

今天给大家分享一款优秀的 jquery 弹出层展示插件 fancybox。

它除了能够展示图片之外,还能够展示 flash、iframe 内容、html 文本以及 ajax 调用。我们能够通过 css 来自己定义外观。

原文与源代码来自:http://tqcto.com/article/web/53337.html

中文文档网址:点击打开链接

Demo下载地址:点击打开链接

效果图

图片预览插件 fancyBox

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="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="image_small_1.jpg" alt=""/></a>
<a class="grouped_elements" rel="group1" href="image_big_2.jpg"><img src="image_small_2.jpg" alt=""/></a>

调用方法也非常easy:

$(".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,则显示关闭button
showNavArrows true 假设为 true。则显示上一张下一张导航箭头
enableEscapeButton true 假设为 true,则启用 esc 来关闭 fancybox
onStart null 回调函数。载入内容时触发
onCancel null 回调函数,取消载入内容后触发
onComplete null 回调函数。载入内容完毕后触发
onCleanup null 回调函数。关闭 fancybox 前触发
onClosed null 回调函数。关闭 fancybox 后触发

原文与源代码来自:http://tqcto.com/article/web/53337.html

上一篇:WeakHashMap 中的弱引用


下一篇:node.js的npm安装