Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 622023
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 13, 20262026-05-13T18:56:21+00:00 2026-05-13T18:56:21+00:00

Some math calculations in JS problem solving I am working on a zoom image

  • 0

Some math calculations in JS problem solving

I am working on a zoom image functionality that creates a new div with a large image that is moved through x and y according to the mousemove on the image.

The large image should move a certain %, which is what i am trying to figure out. How much should it move by.

Here is some info:

  • The small image is always the same size and its square. (it is actually always 221px X 221px)
  • The large image varies (also always square, can be any size like 1000×1000)
  • The view port of the zoomer is always the same.

I want to calculate how much smaller (or vice-versa ) the small image is from the the large.

This is in middle of a whole big script. I started writing the formula for the calculation:
Again, All i want is to get the difference in percent converted into pixels step by step.
First get the % then convert that into pixels.

    zoomObj.caluculateSizes = function(){
        $(zoomObj.largeImage).load(function(){
            // zoomObj.callingEvent is the small image
           zoomObj.smlImgSize = zoomObj.callingEvent.width()
           zoomObj.lrgImgSize = zoomObj.largeImage.width()

           // How do i go from here?
    })

js goes on…….

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-13T18:56:21+00:00Added an answer on May 13, 2026 at 6:56 pm

    This is just bit of simple math…

    w - width of the small image
    W - width of the big image
    l - left position of the small image
    L - left position of the big image
    
    L = l + 1/2w - 1/2W
    
    h - height of the small image
    H - height of the big image
    t - top position of the small image
    T - top position of the big image
    
    T = t + 1/2h - 1/2H
    

    So assuming our image is:

    <img style="width:221px; height:221px; position:absolute; left:600px; top:700px;" />
    

    Answer:

    Left = 600 + 1/2*221 - 1/2*1000 = 210 (rounded)
    Top = 700 + 1/2*221 - 1/2*1000 = 310 (rounded)
    
    <img style="width:1000px; height:1000px; position:absolute; left:210px; top:310px;" />
    

    Using this calculation you can determine where you need to place big image/div to be centred in relation to the other object.


    Edit:
    To put it all together, assuming bigImage is a CHILD of viewport, you need to use 0 as t and 0 as l.

    Left = 0 + 1/2*221 - 1/2*1000 = -390 (rounded)
    Top = 0 + 1/2*221 - 1/2*1000 = -390 (rounded)
    
    <div id="viewport" style="width:221px; height:221px;overflow:hidden;position:relative;">
        <img id="bigImage" style="width:1000px; height:1000px; position:absolute; left:-390px; top:-390px;" />
    </div>
    

    – as you see I used negative values, so bigImage will hide behind the viewport, and because.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 404k
  • Answers 404k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer Does it require Administrative rights on the box (e.g. writing… May 15, 2026 at 5:38 am
  • Editorial Team
    Editorial Team added an answer Main class is usually a document class -> class that… May 15, 2026 at 5:38 am
  • Editorial Team
    Editorial Team added an answer I'm not sure but I think that File.Copy is backed… May 15, 2026 at 5:38 am

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.