use visualviewport instead of innerheight

This commit is contained in:
hippoz 2022-09-02 14:47:53 +03:00
parent 8b14ff2c96
commit ae7875955a
No known key found for this signature in database
GPG key ID: 7C52899193467641

View file

@ -9,12 +9,21 @@ function initViewportSizeHandler() {
root.style.setProperty("--viewportWidth", "100dvw");
root.style.setProperty("--viewportHeight", "100dvh");
} else if (method === "javascriptResponsive") {
const updateUnits = () => {
root.style.setProperty("--viewportWidth", `${window.innerWidth}px`);
root.style.setProperty("--viewportHeight", `${window.innerHeight}px`);
};
window.addEventListener("resize", updateUnits);
updateUnits();
if (window.visualViewport) {
const updateUnits = () => {
root.style.setProperty("--viewportWidth", `${window.visualViewport.width}px`);
root.style.setProperty("--viewportHeight", `${window.visualViewport.height}px`);
};
window.visualViewport.addEventListener("resize", updateUnits);
updateUnits();
} else {
const updateUnits = () => {
root.style.setProperty("--viewportWidth", `${window.innerWidth}px`);
root.style.setProperty("--viewportHeight", `${window.innerHeight}px`);
};
window.addEventListener("resize", updateUnits);
updateUnits();
}
} else if (method === "normalUnits") {
root.style.setProperty("--viewportWidth", "100vw");
root.style.setProperty("--viewportHeight", "100vh");