作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发一个基于 Cordova 的旧应用程序。在我的页面上,我有一个 iframe,用于显示 PDF(使用 PDFJS 库)。用户可以使用 PDF 查看器上的缩放按钮或捏缩放缩放 PDF 区域。要求是当用户单击主页(非 iframe 区域)上的按钮时,我必须将 PDF 的缩放级别重置为正常。
如果使用以下代码(特定于 PDFJS)通过缩放按钮完成缩放,我可以做到这一点 document.getElementById("myPdf").contentWindow.PDFViewerApplication.pdfViewer.currentScaleValue = 'auto';
但是,如果缩放是使用捏缩放完成的,我将无法重置(当捏缩放完成时,加载到 iframe 中的完整 HTML 会被缩放,因此它是网页缩放)。我尝试了下面的代码,以重置初始比例但它不起作用
document.querySelector("meta[name=viewport]").setAttribute(
'content',
'width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0');
谁能建议一种方法来做到这一点?
最佳答案
您可以尝试操纵 .style.zoom
所需目标元素上的属性:
const zoomingTarget = document.querySelector('.zooming-target')
在您捕获想要重置的缩放元素后,您可以更改
.style.zoom
属性:
zoomingTarget.style.zoom = "calc(100% + " + zoomIndex*10 + "%)";
用两个按钮实现->
Changing the browser zoom level
关于javascript - 如何从Javascript重置网页上的缩放(捏缩放后)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70403055/
我是一名优秀的程序员,十分优秀!