• Stars
    star
    659
  • Rank 68,396 (Top 2 %)
  • Language
    HTML
  • License
    MIT License
  • Created over 9 years ago
  • Updated over 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Nice and elegant way to add zooming functionality for images, inspired by medium.com

MediumLightbox

Nice and elegant way to add zooming functionality for images, inspired by medium.com

This plugin reproduce exactly the same code that use Medium to add the smooth transition effect clicking over the images, with some improvement.

Key features

Written in pure javascript for better performance, lightweight and simple. View demo.

Use

Include

<link href="style.css" rel="stylesheet">
<script src="mediumLightbox.js" ></script>

Style.css has some extra style for demo purposes. Pick just what you need.

html

<figure class="half left zoom-effect">
    <div class="aspectRatioPlaceholder" >
        <div class="aspect-ratio-fill" style="padding-bottom: 50%;"></div>
        <img class="img" data-width="900" data-height="450" src="image.jpg">
    </div>
</figure>

To do some calculations some attributes are necessary:

  • data-width: the real width of the image.
  • data-height: the real height of the image.
  • To the div with aspect-ratio-fill class is applied a padding-bottom that is the aspect ratio of the image. The aspect ratio percentage is found with [(height/width)*100] formula.

Initialize plugin

MediumLightbox('figure.zoom-effect');

Option

MediumLightbox('figure.zoom-effect', {
    margin:40
});
  • Margin - default: 20 - Margin in px applied to the image in zoomed view.

Preview | Live demo

alt text