What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.
Use Image-Map-Resizer to keep traditional HTML image-map hotspots aligned as their image changes size. Add the library after your image-map markup, then call imageMapResize() in vanilla JavaScript—or use its jQuery plugin form. You can initialize every map or target a particular <map> with a selector.
What Image-Map-Resizer does
An HTML image map associates an image with clickable regions defined by <area> elements inside a <map>. The areas’ coords values describe positions on the image. When the displayed image is resized, those original coordinates no longer match its new dimensions unless they are adjusted.
Image-Map-Resizer is a client-side JavaScript library that detects window resizing and updates image-map coordinates so the regions stay aligned with the image. It works without jQuery or as a jQuery plugin. It adjusts existing HTML image maps; it does not replace them with SVG or canvas.
Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Repair Windows errors before they cause bigger problems3Scan for outdated or missing drivers - takes under a minuteInstall the library
Use npm
For a project using npm, install the package with:
npm i image-map-resizer
The npm registry lists version 1.0.10. The project documentation says version 1.0 is optimized for IE9 and newer. If a project still needs IE8, the documentation directs users to the older 0.6.x line, described there as functionally equivalent.
#1 Best Overall
- CRISP CLARITY: This 23.8″ Philips V line monitor delivers crisp Full HD 1920x1080 visuals. Enjoy movies, shows and videos with remarkable detail
- INCREDIBLE CONTRAST: The VA panel produces brighter whites and deeper blacks. You get true-to-life images and more gradients with 16.7 million colors
- THE PERFECT VIEW: The 178/178 degree extra wide viewing angle prevents the shifting of colors when viewed from an offset angle, so you always get consistent colors
- WORK SEAMLESSLY: This sleek monitor is virtually bezel-free on three sides, so the screen looks even bigger for the viewer. This minimalistic design also allows for seamless multi-monitor setups that enhance your workflow and boost productivity
- A BETTER READING EXPERIENCE: For busy office workers, EasyRead mode provides a more paper-like experience for when viewing lengthy documents
Use the built script
If you are not installing through npm, include the built imageMapResizer.min.js file in your page. Make sure the file is available at the path used by the script’s src attribute. The example below assumes that it sits alongside the HTML page; change the path if your project serves it from a different location.
Set up a responsive image map with vanilla JavaScript
Put the image and its associated map in the page, include the library, and call imageMapResize() after the map markup. This complete example targets one map by its ID:
<img src="map.png" usemap="#store-map" alt="Store floor plan">
<map name="store-map" id="store-map">
<area shape="rect" coords="10,10,100,80" href="/aisle-1" alt="Aisle 1">
</map>
<script src="imageMapResizer.min.js"></script>
<script>
imageMapResize('map#store-map');
</script>
The image’s usemap value refers to the map’s name with a leading #. The selector passed to the library targets the map element by its id. Keep those values consistent: the image must refer to the intended map, and the selector must match the map you want the library to initialize.
Quick wins for a faster PC:
Scan for outdated or missing drivers - takes under a minuteDriver Scan →Repair Windows errors before they cause bigger problemsFix Now →Initialize all maps or select specific ones
Calling imageMapResize() with no argument initializes maps generally. If you want to limit initialization, pass a selector such as map.myMap, or pass a direct map object. The function returns the map elements to which it bound. Use a selector when a page has multiple maps and only some should be managed by this call.
Rank #2
- CRISP CLARITY: This 22 inch class (21.5″ viewable) Philips V line monitor delivers crisp Full HD 1920x1080 visuals. Enjoy movies, shows and videos with remarkable detail
- 100HZ FAST REFRESH RATE: 100Hz brings your favorite movies and video games to life. Stream, binge, and play effortlessly
- SMOOTH ACTION WITH ADAPTIVE-SYNC: Adaptive-Sync technology ensures fluid action sequences and rapid response time. Every frame will be rendered smoothly with crystal clarity and without stutter
- INCREDIBLE CONTRAST: The VA panel produces brighter whites and deeper blacks. You get true-to-life images and more gradients with 16.7 million colors
- THE PERFECT VIEW: The 178/178 degree extra wide viewing angle prevents the shifting of colors when viewed from an offset angle, so you always get consistent colors
// Initialize maps generally
imageMapResize();
// Initialize maps matching a CSS selector
imageMapResize('map.myMap');
Use the form that fits your markup. For a single map, a selector makes the target explicit; for a page where all maps should be initialized, the no-argument call is concise.
Place initialization after the markup
The simplest placement is near the bottom of the page, after the image, map, and library script have been included. That ensures the map element exists when the initialization call runs. If your application controls when the relevant markup is created, call the initializer after that markup is available rather than before it.
Initialize with jQuery
If the project already uses jQuery, include both jQuery and Image-Map-Resizer, then call the plugin on the map elements:
<script src="jquery.js"></script>
<script src="imageMapResizer.min.js"></script>
<script>
$('map').imageMapResize();
</script>
To wait until the document is ready, the project documentation also shows this pattern:
Rank #3
- Clear visuals. Fluid motion: A 144Hz refresh rate and 1ms MPRT deliver smooth, tear‑free motion across work, gaming, and streaming for clearer, more fluid viewing.
- Eye comfort: TÜV Rheinland 3‑star* certification reduces harmful blue light while preserving stunning color quality without compromise. *TÜV Rheinland 3-star eye comfort certification.
- Wide viewing angle: Get consistent views across a wide 178° /178° viewing angle.
- In-Plane Switching (IPS): See excellent color accuracy and consistency across wide viewing angles with In-plane Switching (IPS) technology.
- Ultra-thin bezels: Maximize your viewing experience with thin bezels.
$(document).ready(function () {
$('map').imageMapResize();
});
Choose either initialization style; the jQuery form is not required. If you do use it, load jQuery before the library and run the plugin call only after the relevant map elements are available.
Check that the map stays aligned
- Confirm the initial markup. The image’s
usemapvalue should point to the intended map name, and each area should have the coordinates and shape you intend to use. - Confirm the library loads. Check that the script path resolves to the built file and that the initialization call runs after the map markup.
- Resize the browser window. The library is intended to detect window resizing and update the map coordinates as the image changes size. Check whether the clickable regions remain over their intended parts of the image.
- Check the selected map. If you pass a selector, make sure it matches the actual
<map>element. If there are multiple maps, verify that the call targets the ones you intend.
Options and compatibility to consider
Vanilla JavaScript or jQuery
Vanilla JavaScript avoids adding a jQuery dependency solely for map resizing. The jQuery plugin call can be convenient when a project already uses jQuery. Both approaches initialize the library; choose based on the dependencies and conventions of your page.
Targeting maps
You can initialize maps generally, use a CSS selector to limit the targets, or pass a direct map object. The function returns the map elements it bound. This is useful when a page contains multiple maps and you want to make the intended targets explicit.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Browser baseline and license
The package documentation describes version 1.0 as optimized for IE9 and newer. It directs projects requiring IE8 to the 0.6.x line and describes that line as functionally equivalent. The project is MIT licensed; consult the license terms for your use case.
Rank #4
- CURVED FOR ENHANCED ENGAGEMENT: An immersive viewing experience with a curved monitor that wraps more closely around your field of vision; It creates a wider view, enhancing depth perception and minimizing peripheral distraction
- SMOOTH PERFORMANCE FOR SEAMLESS CONTENT: Stay in the action when playing games, watching videos, or working on creative projects; The 100Hz refresh rate reduces lag and motion blur so you don't miss a thing in fast-paced moments¹
- MORE GAMING POWER: Gain the edge with optimizable game settings; Color and image contrast can be adjusted to see scenes more vividly and spot enemies hiding in the dark; Game Mode adjusts any game to fill the screen so you can view every detail²
- KEEP IT EASY ON THE EYES: Care for your eyes and stay comfortable, even during long sessions; Advanced eye comfort technology certified by TÜV reduces eye strain by minimizing blue light and reducing irritating screen flicker²
- INCREASED VERSATILITY: Connect to more; Plug devices straight into your monitor for increased flexibility, making your computing environment even more convenient
Troubleshooting
Hotspots do not move with the image
- Verify that the library file loaded successfully and that the initialization call runs after the map markup.
- Check that the call targets the right map. A selector typo can leave the intended map uninitialized.
- Resize the browser window to check the behavior the library is designed to handle: updating coordinates as the image changes size.
The image and map do not appear associated
- Compare the image’s
usemapreference with the map’sname. The reference should use the map name with a leading#, as inusemap="#store-map". - Check that the map markup is present and that its
<area>elements describe the regions you expect.
The jQuery call is not recognized
- Make sure jQuery is included before Image-Map-Resizer and before the plugin call.
- Run the call after the map markup is available. The documented document-ready wrapper is one way to wait for DOM readiness.
- If jQuery is not otherwise needed, use the vanilla JavaScript API instead.
IE8 is a requirement
The project documentation says version 1.0 is optimized for IE9 and newer and points IE8 projects to the 0.6.x line. Choose the version line based on the browser support requirement rather than assuming version 1.0 covers IE8.
Performance and project-fit notes
Image-Map-Resizer is intended for existing HTML image maps and responds to window resizing by updating their coordinates. The available project information does not establish independent performance benchmarks, adoption totals, or a measured limit on the number of maps or areas. If a page’s map behavior is important, validate it in the browsers and layouts your project supports.
It is a natural fit when you need to preserve traditional <map> and <area> markup while making the displayed image responsive. If you are deciding whether to use image maps at all, compare that approach with alternatives such as SVG or canvas against your interaction and accessibility requirements; this library’s documented role is to resize existing image maps, not to make that broader design choice.
Recommended Free Tools
Or skip the browser setup
If what you need is a screenshot of a page rather than an interactive, responsive image map, ScreenshotNeo is a website screenshot API and MCP server. Its screenshot endpoint returns an image or PDF from one GET request. The endpoint does not initialize or resize image-map hotspots on your site; it captures the page.
Best Value
- 【INTEGRATED SPEAKERS】Whether you're at work or in the midst of an intense gaming session, our built-in speakers provide rich and seamless audio, all while keeping your desk clutter-free.
- 【EASY ON THE EYES】 Protect your eyes and enhance your comfort with Blue-Light Shift technology. This feature reduces harmful blue light emissions from your screen, helping to alleviate eye strain during long hours of use and promoting healthier viewing habits.
- 【WIDEN YOUR PERSPECTIVE】Our sleek minimal bezel design ensures undivided attention. The nearly bezel-free display seamlessly connects in a dual monitor arrangement, delivering an unobstructed view that lets you focus on more at once, completely distraction-free.
For example, this cURL request saves a WebP screenshot of Stripe:
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
See the ScreenshotNeo documentation for request parameters. You can also make the request in Python or Node.js:
import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
ScreenshotNeo removes cookie and consent banners, newsletter popups, and chat widgets before capture; each of those steps can be turned off. Bot checks and CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed, and response headers identify the page verdict and billing status. Its MCP server provides take_screenshot, get_page_info, and capture_pdf tools for AI agents and MCP clients. The Free plan includes 1,000 screenshots per month with no card; paid plans start at $5 for 3,000 screenshots.
Sign up for ScreenshotNeo’s free plan to get 1,000 screenshots a month with no card.
License and project notes
The project is MIT licensed. Its README also links to a WordPress port by @iankevinmcdonald. The original library is the relevant choice for a page where you control the HTML and want to keep its image-map hotspots aligned during resizing.
Frequently Asked Questions
Does Image-Map-Resizer require jQuery?
No. It has a vanilla JavaScript API as well as a jQuery plugin form.
Can I initialize only one image map?
Yes. Pass a selector such as map#store-map or a direct map object to target particular map elements.
Which browsers does version 1.0 support?
The project documentation describes version 1.0 as optimized for IE9 and newer; it directs IE8 projects to the 0.6.x line.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

