JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<div id="mainDiv" class="mainDiv viewport" width="400" height="300">
    <img src="https://cdn.pixabay.com/photo/2015/04/23/22/00/tree-736885_960_720.jpg" id="cephImage" class="cephImage" alt="Cephalogram">
</div>

CSS

.viewport {
  margin: 50px auto;
  width: 600px;
  height: 600px;
  overflow: auto; /* Set to hidden to remove scrollbars */
}

.viewport > *{
  display: block; 
}

JavaScript

var mainDiv = document.getElementById('mainDiv');

// Zoom On Scroll
var image = document.getElementById('cephImage');
image.onload  = createImage();

var actualImageWidth;
var actualImageHeight;

function createImage()
{
    actualImageWidth = image.width;
    actualImageHeight = image.height;
    console.log("Actual Image Width and Height: ", [actualImageWidth, actualImageHeight]);
}

var zoomScrollX;
var zoomScrollY;

var zoomFactor = 1;
image.addEventListener('wheel', function(event)
{
  xPos = event.pageX - $('#cephImage').offset().left;
  yPos = event.pageY - $('#cephImage').offset().top;
  
  if(event.deltaY < 0)
  { 
    if(zoomFactor <=4)
    {
      console.log('zoomFactor Value : ', zoomFactor);
      zoomFactor += 1; 
      console.log('Zoom Factor: ', zoomFactor); 
      

      console.log("(Zoom ScrollX, Zoom ScrollY)", [zoomScrollX,zoomScrollY]); 
    
      checkZoom();
      
      mainDiv.scrollTo(zoomScrollX, zoomScrollY);

    }

    else{
      console.log('Reached Max Zoom Level');
    }

  }

  else
  { 
    if(zoomFactor>=2)
    {
      console.log('zoomFactor Value: ', zoomFactor);
      zoomFactor -= 1;  
      console.log('Zoom Factor: ', zoomFactor);
      console.log('Zoom out...') 
      
      zoomScrollX = xPos * zoomFactor;
      zoomScrollY = yPos * zoomFactor;
       
      checkZoom(); 
      
      
      mainDiv.scrollTo(zoomScrollX, zoomScrollY);

    }
    else{
      console.log('Reached Minimum Zoom Level');
    }
  }
});


// Function CheckZoom Level.
function checkZoom()
{
    console.log('Zoom Level: ', zoomFactor);
    // console.log('[x,y]: ', [xPos,yPos]);
    console.log("actual Image Width: ", actualImageWidth);
    console.log("actual Image Height: ", actualImageHeight);

    var imageWidth  = actualImageWidth * zoomFactor;
    var imageHeight = actualImageHeight * zoomFactor;

    image.width = imageWidth;
    image.height = imageHeight;

    console.log('image Width: ', image.width);
    console.log('Image...