|
@@ -130,8 +130,24 @@ this.hooksFrame = this.hooksFrame || (() => {
|
|
|
};
|
|
};
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
- dispatchEvent(new UIEvent("resize"));
|
|
|
|
|
- dispatchEvent(new UIEvent("scroll"));
|
|
|
|
|
|
|
+ const zoomFactor = Math.min(clientHeight / scrollHeight, clientWidth / scrollWidth);
|
|
|
|
|
+ if (zoomFactor < 1) {
|
|
|
|
|
+ const transform = document.documentElement.style.getPropertyValue("transform");
|
|
|
|
|
+ const transformPriority = document.documentElement.style.getPropertyPriority("transform");
|
|
|
|
|
+ const transformOrigin = document.documentElement.style.getPropertyValue("transform-origin");
|
|
|
|
|
+ const transformOriginPriority = document.documentElement.style.getPropertyPriority("transform-origin");
|
|
|
|
|
+ document.documentElement.style.transform = "scale3d(" + zoomFactor + ", " + zoomFactor + ", 1)";
|
|
|
|
|
+ document.documentElement.style.transformOrigin = "50% 0";
|
|
|
|
|
+ document.documentElement.style.setProperty("transform", "scale3d(" + zoomFactor + ", " + zoomFactor + ", 1)", "important");
|
|
|
|
|
+ document.documentElement.style.setProperty("transform-origin", "50% 0", "important");
|
|
|
|
|
+ dispatchEvent(new UIEvent("resize"));
|
|
|
|
|
+ dispatchEvent(new UIEvent("scroll"));
|
|
|
|
|
+ document.documentElement.style.setProperty("transform", transform, transformPriority);
|
|
|
|
|
+ document.documentElement.style.setProperty("transform-origin", transformOrigin, transformOriginPriority);
|
|
|
|
|
+ } else {
|
|
|
|
|
+ dispatchEvent(new UIEvent("resize"));
|
|
|
|
|
+ dispatchEvent(new UIEvent("scroll"));
|
|
|
|
|
+ }
|
|
|
const docBoundingRect = document.documentElement.getBoundingClientRect();
|
|
const docBoundingRect = document.documentElement.getBoundingClientRect();
|
|
|
Array.from(observers).forEach(([intersectionObserver, observer]) => {
|
|
Array.from(observers).forEach(([intersectionObserver, observer]) => {
|
|
|
const rootBoundingRect = observer.options.root && observer.options.root.getBoundingClientRect();
|
|
const rootBoundingRect = observer.options.root && observer.options.root.getBoundingClientRect();
|