PHPackages                             fancyapps/fancybox - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Image &amp; Media](/categories/media)
4. /
5. fancyapps/fancybox

ActiveComponent[Image &amp; Media](/categories/media)

fancyapps/fancybox
==================

v2.1.6(9y ago)011.1k↓40.6%JavaScript

Since Oct 16Pushed 9y ago1 watchersCompare

[ Source](https://github.com/ange187/fancyBox)[ Packagist](https://packagist.org/packages/fancyapps/fancybox)[ RSS](/packages/fancyapps-fancybox/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (1)Versions (2)Used By (0)

fancyBox
========

[](#fancybox)

fancyBox is a tool that offers a nice and elegant way to add zooming functionality for images, html content and multi-media on your webpages.

More information and examples:

License:

Copyright (c) 2012 Janis Skarnelis -

How to use
----------

[](#how-to-use)

To get started, download the plugin, unzip it and copy files to your website/application directory. Load files in the section of your HTML document. Make sure you also add the jQuery library.

```

```

Create your links with a `title` (or `data-fancybox-title`) if you want a title to be shown, and add a class:

```

```

If you have a set of related items that you would like to group, additionally include a group name in the `rel` (or `data-fancybox-group`) attribute:

```

```

Initialise the script like this:

```

    $(document).ready(function() {
        $('.fancybox').fancybox();
    });

```

May also be passed an optional options object which will extend the default values. Example:

```

    $(document).ready(function() {
        $('.fancybox').fancybox({
            padding : 0,
            openEffect  : 'elastic',
            closeBtn: false
        });
    });

```

Tip: Automatically group and apply fancyBox to all images:

```
$("a[href$='.jpg'],a[href$='.jpeg'],a[href$='.png'],a[href$='.gif']").attr('rel', 'gallery').fancybox();
```

Script uses the `href` attribute of the matched elements to obtain the location of the content and to figure out content type you want to display. You can specify type directly by adding classname (fancybox.image, fancybox.iframe, etc) or `data-fancybox-type` attribute:

```
//Ajax:
Example
//or
Example

//Iframe:
Example

//Inline (will display an element with `id="example"`)
Example

//SWF:
Example

//Image:
Example
```

Note, ajax requests are subject to the [same origin policy](http://en.wikipedia.org/wiki/Same_origin_policy). If fancyBox will not be able to get content type, it will try to guess based on 'href' and will quit silently if would not succeed. (this is different from previsous versions where 'ajax' was used as default type or an error message was displayed).

Advanced
--------

[](#advanced)

### Helpers

[](#helpers)

Helpers provide a simple mechanism to extend the capabilities of fancyBox. There are two built-in helpers - 'overlay' and 'title'. You can disable them, set custom options or enable other helpers. Examples:

```
//Disable title helper
$(".fancybox").fancybox({
    helpers:  {
        title:  null
    }
});

//Disable overlay helper
$(".fancybox").fancybox({
    helpers:  {
        overlay : null
    }
});

//Change title position and overlay color
$(".fancybox").fancybox({
    helpers:  {
        title : {
            type : 'inside'
        },
        overlay : {
            css : {
                'background' : 'rgba(255,255,255,0.5)'
            }
        }
    }
});

//Enable thumbnail helper and set custom options
$(".fancybox").fancybox({
    helpers:  {
        thumbs : {
            width: 50,
            height: 50
        }
    }
});
```

### API

[](#api)

Also available are event driven callback methods. The `this` keyword refers to the current or upcoming object (depends on callback method). Here is how you can change title:

```
$(".fancybox").fancybox({
    beforeLoad : function() {
        this.title = 'Image ' + (this.index + 1) + ' of ' + this.group.length + (this.title ? ' - ' + this.title : '');

        /*
            "this.element" refers to current element, so you can, for example, use the "alt" attribute of the image to store the title:
            this.title = $(this.element).find('img').attr('alt');
        */
    }
});
```

It`s possible to open fancyBox programmatically in various ways:

```
//HTML content:
$.fancybox( 'Lorem LipsumLorem lipsum', {
    title : 'Custom Title'
});

//DOM element:
$.fancybox( $("#inline"), {
    title : 'Custom Title'
});

//Custom object:
$.fancybox({
    href: 'example.jpg',
    title : 'Custom Title'
});

//Array of objects:
$.fancybox([
    {
        href: 'example1.jpg',
        title : 'Custom Title 1'
    },
    {
        href: 'example2.jpg',
        title : 'Custom Title 2'
    }
], {
    padding: 0
});
```

There are several methods that allow you to interact with and manipulate fancyBox, example:

```
//Close fancybox:
$.fancybox.close();
```

There is a simply way to access wrapping elements using JS:

```
$.fancybox.wrap
$.fancybox.skin
$.fancybox.outer
$.fancybox.inner
```

You can override CSS to customize the look. For example, make navigation arrows always visible, change width and move them outside of area (use this snippet after including fancybox.css):

```
.fancybox-nav span {
    visibility: visible;
}

.fancybox-nav {
    width: 80px;
}

.fancybox-prev {
    left: -80px;
}

.fancybox-next {
    right: -80px;
}
```

In that case, you might want to increase space around box:

```
$(".fancybox").fancybox({
    margin : [20, 60, 20, 60]
});
```

Bug tracker
-----------

[](#bug-tracker)

Have a bug? Please create an issue on GitHub at

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity25

Limited adoption so far

Community20

Small or concentrated contributor base

Maturity63

Established project with proven stability

 Bus Factor1

Top contributor holds 84.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

3501d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/66efa4c4cf0d387e8085081b04af668bc3dc7ebea307683bcd5744d08ed1d235?d=identicon)[ange187](/maintainers/ange187)

---

Top Contributors

[![fancyapps](https://avatars.githubusercontent.com/u/1055589?v=4)](https://github.com/fancyapps "fancyapps (171 commits)")[![mbasaglia](https://avatars.githubusercontent.com/u/2465791?v=4)](https://github.com/mbasaglia "mbasaglia (2 commits)")[![ChrisMBarr](https://avatars.githubusercontent.com/u/463685?v=4)](https://github.com/ChrisMBarr "ChrisMBarr (2 commits)")[![xrmx](https://avatars.githubusercontent.com/u/12932?v=4)](https://github.com/xrmx "xrmx (2 commits)")[![freshprince](https://avatars.githubusercontent.com/u/19355?v=4)](https://github.com/freshprince "freshprince (1 commits)")[![heldr](https://avatars.githubusercontent.com/u/134727?v=4)](https://github.com/heldr "heldr (1 commits)")[![hongaar](https://avatars.githubusercontent.com/u/205834?v=4)](https://github.com/hongaar "hongaar (1 commits)")[![imhoffd](https://avatars.githubusercontent.com/u/236501?v=4)](https://github.com/imhoffd "imhoffd (1 commits)")[![iszak](https://avatars.githubusercontent.com/u/38895?v=4)](https://github.com/iszak "iszak (1 commits)")[![jonasemde](https://avatars.githubusercontent.com/u/5083193?v=4)](https://github.com/jonasemde "jonasemde (1 commits)")[![kidwm](https://avatars.githubusercontent.com/u/822446?v=4)](https://github.com/kidwm "kidwm (1 commits)")[![kkirsche](https://avatars.githubusercontent.com/u/947110?v=4)](https://github.com/kkirsche "kkirsche (1 commits)")[![lduer](https://avatars.githubusercontent.com/u/3307025?v=4)](https://github.com/lduer "lduer (1 commits)")[![lgobatto](https://avatars.githubusercontent.com/u/1541996?v=4)](https://github.com/lgobatto "lgobatto (1 commits)")[![marcobiedermann](https://avatars.githubusercontent.com/u/5244986?v=4)](https://github.com/marcobiedermann "marcobiedermann (1 commits)")[![markashleybell](https://avatars.githubusercontent.com/u/483470?v=4)](https://github.com/markashleybell "markashleybell (1 commits)")[![matthendrix](https://avatars.githubusercontent.com/u/101661?v=4)](https://github.com/matthendrix "matthendrix (1 commits)")[![mcwehner](https://avatars.githubusercontent.com/u/48683?v=4)](https://github.com/mcwehner "mcwehner (1 commits)")[![mdaliyan](https://avatars.githubusercontent.com/u/2923173?v=4)](https://github.com/mdaliyan "mdaliyan (1 commits)")[![meNeither](https://avatars.githubusercontent.com/u/868080?v=4)](https://github.com/meNeither "meNeither (1 commits)")

### Embed Badge

![Health badge](/badges/fancyapps-fancybox/health.svg)

```
[![Health](https://phpackages.com/badges/fancyapps-fancybox/health.svg)](https://phpackages.com/packages/fancyapps-fancybox)
```

###  Alternatives

[happyworm/jplayer

jPlayer allows you to create a media player with a consistent interface and experience across all browsers.

4.6k114.2k1](/packages/happyworm-jplayer)[imsky/holder

Client-side image placeholders.

5.8k20.5k2](/packages/imsky-holder)[bkwld/croppa

Image thumbnail creation through specially formatted URLs for Laravel

510496.0k23](/packages/bkwld-croppa)[goat1000/svggraph

Generates SVG graphs

132849.6k3](/packages/goat1000-svggraph)[cohensive/embed

Media Embed (for Laravel or as a standalone).

120370.4k](/packages/cohensive-embed)[netresearch/rte-ckeditor-image

Image support in CKEditor for the TYPO3 ecosystem - by Netresearch

63991.3k4](/packages/netresearch-rte-ckeditor-image)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
