zoom-level
zoom-level copied to clipboard
A comprehensive cross-browser package that allow you to determine page's and element's zoom level
ABOUT
This plugin allows you to detect browser's and separate element's zoom level.
It is lightweight and has no dependencies!
INSTALLATION
npm install zoom-level
# or via yarn
yarn add zoom-level
INSTALLATION NOTE:
This lib is written in ES6+ and delivering with both, transpiled and untranspiled versions:
-
main
field ofpackage.json
is pointing ES5 with CJS modules resolution; -
module
field is pointing to ES5 with ES modules resolution; -
esnext
field is pointing to ESNext with ES modules resolution;
Depending on your targets you may have to use Webpack and/or
Babel to pull untranspiled version of package.
See some tips on wiring thing
up: https://2ality.com/2017/06/pkg-esnext.html
USAGE
import zoomLevel from "zoom-level";
zoomLevel(); // 1;
window.addEventListener("resize", () => {
zoomLevel(); // will return current browser's zoom level
});
Or, in case you want to detect separate element's zoom level (they can use own zoom
CSS property
which stacks with browser's one);
import { elementZoomLevel } from "zoom-level";
const zoomedBlock = document.createElement("div");
zoomedBlock.style.zoom = 0.5;
zoomedBlock.style.width = "150px";
zoomedBlock.style.height = "150px";
zoomedBlock.style.margin = "32px";
zoomedBlock.style.padding = "32px";
zoomedBlock.style.background = "rgba(0,0,0,.05)";
zoomedBlock.innerText = "Lorem ipusm dolor sit amet";
document.appendChild(zoomedBlock);
elementZoomLevel(zoomedBlock); // 0.5;
window.addEventListener("resize", () => {
elementZoomLevel(zoomedBlock); // if you zoom to 200% it'll be 1
});
TESTS
Sadly i have no idea how to manage testing of this package, due to there is no known ways to control
browser's zoom level.
If you know how to do it - please let me know.
Related projects
- react-scrollbars-custom — The best React custom scrollbars component. Allows you to customise scrollbars as you like it, crossbrowser!
- @xobotyi/scrollbar-width — A tool to get browser's scrollbars width.
- @xobotyi/should-reverse-rtl-scroll — A tool detecting if RTL scroll value should be negative.