
Security News
npm Adopts OIDC for Trusted Publishing in CI/CD Workflows
npm now supports Trusted Publishing with OIDC, enabling secure package publishing directly from CI/CD workflows without relying on long-lived tokens.
Lity is a ultra-lightweight, accessible and responsive lightbox plugin which supports images, iframes and inline content out of the box.
Minified and gzipped, its total footprint weights about 3kB.
It requires jQuery or Zepto (with the callbacks, deferred and data modules).
All ready-to-use files are located in the dist/
directory.
Include the Lity javascript and css files and its dependencies in your HTML document:
<link href="dist/lity.css" rel="stylesheet">
<script src="vendor/jquery.js"></script>
<script src="dist/lity.js"></script>
Lity can also be installed via Bower or npm.
Add the data-lity
attribute to <a>
elements for which you want the links to
be opened in a lightbox:
<a href="https://farm9.staticflickr.com/8642/16455005578_0fdfc6c3da_b.jpg" data-lity>Image</a>
<a href="#inline" data-lity>Inline</a>
<a href="https://www.youtube.com/watch?v=XSGBVzeBUbk" data-lity>iFrame Youtube</a>
<a href="https://vimeo.com/1084537" data-lity>iFrame Vimeo</a>
<a href="https://maps.google.com/maps?q=1600+Amphitheatre+Parkway,+Mountain+View,+CA" data-lity>Google Maps</a>
<div id="inline" style="background:#fff" class="lity-hide">
Inline content
</div>
If you want to open another URI than defined in the href
attribute, just add
a data-lity-target
with the URI:
<a href="/image.html" data-lity data-lity-target="/image-preview.jpg">Image</a>
The lity
function can be either used directly to open URLs (or HTML) in a
lightbox or as an event handler.
Lity lity(string target, [Object options, [, HTMLElement|$ opener]])
target
: The URL or HTML to open.options
: Options as an object of key-value pairs.opener
: The element which triggered opening the lightbox (if used as a event
handler, this is automatically set to the element which triggered the event).A Lity
instance.
// Open a URL or HTML in a lightbox
lity('https://www.youtube.com/watch?v=XSGBVzeBUbk');
lity('<p>Some content to show...</p>');
// Bind as an event handler
$(document).on('click', '[data-my-lightbox]', lity);
If you open a lightbox programmatically, the lity
function returns a Lity
instance you can use to interact with the lightbox.
The Lity
instance is also passed as the second argument to the
event handlers.
var instance = lity('https://www.youtube.com/watch?v=XSGBVzeBUbk');
Closes the lightbox and returns a promise which resolves once the closing animation is finished.
instance.close().then(function() {
console.log('Lightbox closed');
});
Returns the root HTML element.
var element = instance.element();
Returns the HTML element which triggered opening the lightbox.
var opener = instance.opener();
Note: The value might be undefined if the lightbox has been opened programmatically and not by a click event handler and no opener argument was provided.
Sets or returns options of the instance.
var allOptions = instance.options();
var template = instance.options('template');
instance.options('template', '<div>...</div>');
var closeOnEsc = instance.options('esc');
instance.options('esc', false);
All events receive the Lity
instance as the second
argument.
Triggered before the lightbox is opened.
$(document).on('lity:open', function(event, instance) {
console.log('Lightbox opened');
});
Triggered when the lightbox is ready.
$(document).on('lity:ready', function(event, instance) {
console.log('Lightbox ready');
});
Triggered before the lightbox is closed.
$(document).on('lity:close', function(event, instance) {
console.log('Lightbox closed');
});
Triggered when the closing animation is finished and just before the lightbox is removed from the DOM.
$(document).on('lity:remove', function(event, instance) {
console.log('Lightbox removed');
});
Triggered when the instance is resized, usually when the user resizes the window.
$(document).on('lity:resize', function(event, instance) {
console.log('Lightbox resized');
});
Copyright (c) 2015-2020 Jan Sorgalla. Released under the MIT license.
FAQs
Lightweight, accessible and responsive lightbox.
The npm package lity receives a total of 5,289 weekly downloads. As such, lity popularity was classified as popular.
We found that lity demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
npm now supports Trusted Publishing with OIDC, enabling secure package publishing directly from CI/CD workflows without relying on long-lived tokens.
Research
/Security News
A RubyGems malware campaign used 60 malicious packages posing as automation tools to steal credentials from social media and marketing tool users.
Security News
The CNA Scorecard ranks CVE issuers by data completeness, revealing major gaps in patch info and software identifiers across thousands of vulnerabilities.