JQuery Extension for Scrolling, Zooming In/Out of An Image | ZoomMarker

ZoomMarker jQuery plugin for scroll, zoom in/out, drag, and adding tags. The effects of this add-on with mouse scrolling, zooming, and drag functions like Maps, and tags can be added with callback functions.

background image zoom on scroll, zoom image on scroll, zoom on scroll javascript

How to make use of it:

1. Include the needed jQuery library, jQuery mousewheel plugin, and hammer.js on the web page.

<script src="/path/to/jquery.min.js"></script>
<script src="/path/to/hammer.min.js"></script>
<script src="/path/to/jquery.mousewheel.min.js"></script>

2. The required HTML structure.

<div id="picview" class="picview">
  // Add Image Here

3. Include the jQuery ZoomMarker plugin’s JavaScript and CSS information on the web page.

<link rel="stylesheet" href="css/zoom-marker.css">
<script src="js/zoom-marker.js"></script>

4. Initialize the ZoomMarker plugin on doc ready and add your individual markers to the picture as follows:

$(document).ready(function () {
    src: "image-to-zoom.jpg",
    rate: 0.2, // from 0 to 1
      {src:"marker.png", x:500, y:500},
      {src:"marker.png", x:200, y:200},
      {src:"marker.png", x:1280, y:720, size:20},

5. All attainable plugin choices:


  // mouse scroll speed
  rate: 0.2,

  // path to image
  src: null, 

  // width
  width: 500,

  // min width
  min: 300,

  // max width
  max: null,

  // predefined markers
  // {src:"marker.png", x:100, y:100, size:20, click:fn()}
  markers: [],

  // marker size
  marker_size: 20,

  // enable draggable
  enable_drag: true,

  // auto index
  auto_index_z: true,

  // enable cancas layer
  enable_canvas: false,

  // lock zoom
  zoom_lock: false

6. API strategies.

// load an image to the document

// zoom an image
$('#viewArea').zoomMarker_Zoom(center, scale);

// get image size

// enable draggable

// make the marker always in front of elements

// reset image

// get canvas

// clear canvas

// move marker
$('#viewArea').zoomMarker_Move(x, y);

// clear marker

// remove marker

// add custom image markers
  hint: {
    value: '',
    style: {}
  dialog: {
    value: '',
    style: {},
    offsetX: 0,
    offsetY: 0

7. Events.

$('#viewArea').on("zoom_marker_img_load", function(event, src){
  // when the image stars loading

$('#viewArea').on("zoom_marker_img_loaded", function(event, size){
  // after the image has been loaded

$('#viewArea').on("zoom_marker_click", function(event, markerObj){
  // when a marker is clicked

$('#viewArea').on("zoom_marker_mouse_click", function(event, mouseObj){
  // when the image is clicked

$('#viewArea').on("zoom_marker_move_end", function(event, x, y, markerObj){
  // when move end

Simple Image Zoom And Annotation Plugin, image zoom on hover, ZoomMarker Plugin/Github

See Demo And Download

Official Website(NoticeVengus): Click Here

This superior jQuery/javascript plugin is developed by NoticeVengus. For extra Advanced Usages, please go to the official website.

Related Posts


[Icon Picker] Iconpicker for Bootstrap 5 Icons Library

Bootstrap 5-based icon picker which supports any icon libraries like Bootstrap Icons, Font Awesome[fontawesome.com], etc. Must Read: 1000+ Pixel Perfect SVG Icons For Vue Components | Unicons How…


Bootstrap Multiple Image Upload with Preview and Delete | ImagesLoader

ImagesLoader is a standard bootstrap image upload plugin that provides an easy-to-use and nice-looking interface for uploading multiple images to a web server. Must Read: HTML 5…


A Lightweight jQuery Plugin for Animating Split-Flap Displays | fallblatt

fallblatt is a lightweight jQuery plugin for animating split screens. This jQuery plugin allows you to include such offers in your web application. Everything from virtual departure…


Dark & Light Switch Mode Toggle for Bootstrap 5

Switching to dark mode is done by toggling HTML tags that include -dark or -light as a category. It is made by manipulating the DOM with JavaScript. The text color also changes depending…


jQuery Plugin for Countdown Timer on HTML Page | SyoTimer

yoTimer jQuery plugin allows you to create digital style countdowns/periodic timers on the webpage, with callbacks support and timezone/translation customization. Features Periodic count with the specified period…


Dynamic, Data-driven Periodic Table built with Vue.js

Periodicity is a dynamic, data-driven periodic table created with Vue.js that uses D3 animations and graphs to show the beauty of periodic trends. Built With vue.js (component…