From eed8a5bf727163cf2da343490c09fc248b658e5e Mon Sep 17 00:00:00 2001 From: Vladimir Kharlampidi Date: Thu, 28 Mar 2024 12:26:41 +0300 Subject: [PATCH] fix(zoom): fix panning on SVG elements fixes #7352 --- src/modules/zoom/zoom.mjs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/modules/zoom/zoom.mjs b/src/modules/zoom/zoom.mjs index d6b28c793..625c51d47 100644 --- a/src/modules/zoom/zoom.mjs +++ b/src/modules/zoom/zoom.mjs @@ -255,8 +255,8 @@ export default function Zoom({ swiper, extendParams, on, emit }) { if (!image.isTouched || !gesture.slideEl) return; if (!image.isMoved) { - image.width = gesture.imageEl.offsetWidth; - image.height = gesture.imageEl.offsetHeight; + image.width = gesture.imageEl.offsetWidth || gesture.imageEl.clientWidth; + image.height = gesture.imageEl.offsetHeight || gesture.imageEl.clientHeight; image.startX = getTranslate(gesture.imageWrapEl, 'x') || 0; image.startY = getTranslate(gesture.imageWrapEl, 'y') || 0; gesture.slideWidth = gesture.slideEl.offsetWidth; @@ -315,7 +315,7 @@ export default function Zoom({ swiper, extendParams, on, emit }) { const scaleRatio = (zoom.scale - currentScale) / (gesture.maxRatio - swiper.params.zoom.minRatio); const { originX, originY } = gesture; - + console.log(image); image.currentX = image.touchesCurrent.x - image.touchesStart.x + @@ -499,8 +499,8 @@ export default function Zoom({ swiper, extendParams, on, emit }) { diffX = offsetX + slideWidth / 2 - touchX; diffY = offsetY + slideHeight / 2 - touchY; - imageWidth = gesture.imageEl.offsetWidth; - imageHeight = gesture.imageEl.offsetHeight; + imageWidth = gesture.imageEl.offsetWidth || gesture.imageEl.clientWidth; + imageHeight = gesture.imageEl.offsetHeight || gesture.imageEl.clientHeight; scaledWidth = imageWidth * zoom.scale; scaledHeight = imageHeight * zoom.scale;