首页 > 解决方案 > 缩放时,滚动条会粘在 Angular 9 中文档的开头

问题描述

在 Angular 9 中,我在我的 pdf 查看器中实现了鼠标滚动缩放。但是当我滚动时,它总是滚动到左上角。我希望它滚动鼠标指向的位置。请先看下图。在缩放时,垂直和水平滚动条分别粘在顶部和左侧。

我有以下代码。

  const { docViewer } = instance;
  const docContainer = instance.iframeWindow.document.querySelector('[data-element="documentContainer"]');
  docContainer.addEventListener('wheel', onWheel, { passive: false });
  function onWheel(e) {
    e.preventDefault();
    console.log("Zoom level - ", instance.getZoomLevel());
    console.log("x - ", e.pageX , " y - ", e.pageY);
    var newZoomFactor;
    if (e.deltaY < 0) {
      newZoomFactor = docViewer.getZoom() * 1.25;
    } else if (e.deltaY > 0) {
      newZoomFactor = docViewer.getZoom() * 0.8;
    }
    console.log("Zoom factor - ", newZoomFactor);
    docViewer.zoomToMouse(newZoomFactor, e.pageX ,e.pageY);
  }

标签: angularpdfjspdftronsvgpanzoom

解决方案


推荐阅读