A Lightweight Javascript Library For Zooming / Enlarging Images | Zoom.js

Smooth Zoom is a lightweight javascript library for enlarging images like Medium, and Google Photos, which displays images at a large size just like you saw it on Medium.com.

Features:

  • Smooth transitions.
  • Automatically adjust the background color based on the average color of the image.
  • Zoom in on the high-resolution picture provided.

How to make use of it:

1. Install the package deal.

# Yarn
$ yarn add smooth-zoom

# NPM
$ npm i smooth-zoom

2. Import the Zoom.js as an ES module.

import Zoom from "smooth-zoom";

3. Directly load the JavaScript file from a CND.

<script src="https://cdn.jsdelivr.net/npm/smooth-zoom/dist/zoom.browser.js"></script>

4. Initialize the library on target pictures and complete them.

<img src="1.jpg" class="zoomable" alt="Image Alt" />
Zoom(".zoomable");

5. Determine the background colour of the picture.

Zoom(".zoomable",{
  background: "auto"
});

6. Replace the picture supply when the picture is opened.

Zoom(".zoomable",{
  originalizer: (src) => src.replace(/-[0-9]+\.jpg/, ".jpg"),
});
PropertyTypeDefaultDescription
backgroundstringrgba(0, 0, 0, 0.95)Image’s background color.
Use auto to get the average color of the image
useMaximumSizebooleantrueFind the longest width through the image’s natural width and srcset attribute
onClick(img: HTMLImageElement) => voidundefinedA function that fires on click. Note that IMG is the original image element.
onTransitionEnd(img: HTMLImageElement) => voidundefinedA function that fires after zoom animation. Note that the image is cloned image element.

Tiny Smooth Image Zoom Library Inspired By Medium.com, Smooth Zoom Plugin/Github


See Demo And Download

Official Website(marshall-ku): Click Here

This superior jQuery/javascript plugin is developed by marshall-ku. For extra Advanced usage, please go to the official website.

Related Posts

Confetti-Falling-Animation-Effect-party

Confetti Falling Animation Effect In JavaScript | party.js

Party.js is a JavaScript library to brighten user site experience with visual effects! Celebrate success with dom confetti! The library is written in TypeScript and compiled into…

jquery-cookie-consent

Simple jQuery Cookie Consent Plugin

jquery.cookie-consent is a simple jQuery plugin to request consent to use cookies. An easy-to-use and highly customizable cookie consent bar that informs your visitors of the use…

Timepicker-Plugin-for-jQuery

Timepicker JavaScript Plugin for jQuery Inspired by Google Calendar

jquery.timepicker is a lightweight jQuery timer plugin inspired by Google Calendar. It supports both mouse and keyboard navigation and weighs 5.5KB minified and compact. Features: Highly customizable…

angular-ngx-carousel-slider

A Lightweight, Touchable, and Responsive Angular Universal Carousel Library

ngxCarousel is a lightweight, tactile, and responsive library for creating an angular carousel. No dependencies, no more hammer. Must Read: Angular Responsive Image Slider With Lightbox Popup…

vue-fullpage-modal

First Mobile Full-screen Modal Popup Library For Vue

Vue full-page modal is a responsive, mobile-compatible, screen-friendly pop-up library for Vue.js. Must Read: Modal Component Is Written in Vanilla JS | ensemble Modal How to make…

random-number-picker

Generate a Random Number Picker In Vanilla JavaScript

Random Number Picker is a Vanilla JS-based number picker that allows you to generate a random number within a specified range. Must Read: Generating Lottery Numbers Using…