From 5f15f6bb7e7bc0f900a31656b2018054b56efac5 Mon Sep 17 00:00:00 2001 From: Dmytro Lukashenko Date: Tue, 22 Aug 2023 10:37:58 +0300 Subject: [PATCH] fix: fix getComputedStyle error --- components/lib/dialog/Dialog.vue | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/components/lib/dialog/Dialog.vue b/components/lib/dialog/Dialog.vue index bc4ac172e..ebfde1dba 100755 --- a/components/lib/dialog/Dialog.vue +++ b/components/lib/dialog/Dialog.vue @@ -322,24 +322,27 @@ export default { let leftPos = offset.left + deltaX; let topPos = offset.top + deltaY; let viewport = DomHandler.getViewport(); + let containerComputedStyle = getComputedStyle(this.container) + let marginLeft = parseFloat(containerComputedStyle.marginLeft); + let marginTop = parseFloat(containerComputedStyle.marginTop); this.container.style.position = 'fixed'; if (this.keepInViewport) { if (leftPos >= this.minX && leftPos + width < viewport.width) { this.lastPageX = event.pageX; - this.container.style.left = leftPos + 'px'; + this.container.style.left = (leftPos - marginLeft) + 'px'; } if (topPos >= this.minY && topPos + height < viewport.height) { this.lastPageY = event.pageY; - this.container.style.top = topPos + 'px'; + this.container.style.top = (topPos - marginTop) + 'px'; } } else { this.lastPageX = event.pageX; - this.container.style.left = leftPos + 'px'; + this.container.style.left = (leftPos - marginLeft) + 'px'; this.lastPageY = event.pageY; - this.container.style.top = topPos + 'px'; + this.container.style.top = (topPos - marginTop) + 'px'; } } }; @@ -369,7 +372,7 @@ export default { window.document.removeEventListener('mouseup', this.documentDragEndListener); this.documentDragEndListener = null; } - } + }, }, computed: { maximizeIconComponent() {