Angular Component For Zoomable Images | ngx-image-zoom

ngx-image-zoom NgxImageZoom is inspired by zoom image angular2 and JQuery libraries such as jQuery Zoom and elevateZoom-plus but a pure Angular 5+ implementation of similar concepts. This plugin works with both image URLs and inline images.

angular zoom image onclick, image zoom and pan angular, zoom in zoom out image in angular

Simple VueJS Component for Image Magnifying/Product Zooming

How to make use of it:


$ npm install ngx-image-zoom --save

1. From your Angular AppModule:

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import the library
import { NgxImageZoomModule } from 'ngx-image-zoom';

  declarations: [
  imports: [
    NgxImageZoomModule // <-- Add this line
  providers: [],
  bootstrap: [AppComponent]
export class AppModule { }

2. Once the library is imported, you can use its components in your Angular app:

<!-- You can now use NgxImageZoom component in app.component.html -->

Available Options

OptionDefault valueDescription
thumbImagenone(Required) The smaller version of the image will be shown when there’s no interaction by the user.
fullImagenoneThe full-resolution version of the image is to be used when zooming. If not supplied thumb image will be used.
magnification1The zoom factor is to be used by default. 1 means we use the fullImage at its actual resolution.
zoomMode‘hover’The mode of zooming to use, is explained in the table below.
enableScrollZoomfalseBoolean that toggles if the mouse wheel should be captured when hovering over the image to adjust magnification.
scrollStepSize0.1When using scroll zoom this setting determines how big steps each scroll changes the zoom.
enableLensfalseIf enabled only a small portion around the mouse cursor will actually magnify instead of the entire image area.
lensWidth100Width of the lens, if enabled.
lensHeight100Height of the lens, if enabled.
circularLensfalseMake the lens circular instead of square. This will only look good if width and height are equal.
minZoomRatiobaseRatioThe lower limit on how much zoom can be applied with scrollZoom enabled. See below for details.
maxZoomRatio2The upper limit on how much zoom can be applied with scrollZoom enabled. See below for details.

Zoom modes

hoverWhenever the mouse cursor moves over the thumbnail it will show the zoomed image until it leaves the thumbnail.
clickSimilar to hover but it only starts zooming if the user clicks the image. Moving the cursor away from the image disables it again.
toggleA click in the image will zoom at the point of the cursor. Another click will restore the small image.
toggle-clickCombination of toggle and click. A click in the image will start zooming. Another click or moving the cursor away from the image will restore the small image.
hover-freezeThe first click enables hover mode, the second click freezes the zoomed image where it is, and the third click restores the thumbnail.

Angular 2+ Component For Zoomable Images, ngx-image-zoom Plugin/Github

See Demo And Download

Official Website(wittlock): Click Here

This superior jQuery/javascript plugin is developed by wittlock. For extra advanced usage, please go to the official website.

Related Posts


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…


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 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…


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…


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…


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…