summaryrefslogtreecommitdiff
path: root/src/shadow.js
diff options
context:
space:
mode:
authorEltrac <hi@guhub.cn>2025-09-17 20:58:10 +0800
committerEltrac <hi@guhub.cn>2025-09-17 20:58:10 +0800
commit7d2d1fa77fd9caa024f1afe4cf95a9ba48b1ce42 (patch)
treee4afd284c4c40e469bb837da7297f5acaa30518a /src/shadow.js
parent3577505a7f2d43692819774f12ec43f8b38ef804 (diff)
fix: top, left, with, height attr not set properly
Add 'px' unit after top, left, width, height values. Providing a number value might cause some occasional problems.
Diffstat (limited to 'src/shadow.js')
-rw-r--r--src/shadow.js18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/shadow.js b/src/shadow.js
index 08e17d9..019cec5 100644
--- a/src/shadow.js
+++ b/src/shadow.js
@@ -12,16 +12,17 @@ export default class Shadow {
constructor(image) {
this.original = image;
- this.create(image);
- const rect = this.element.getBoundingClientRect();
- this.startingState = {
+ const rect = this.original.getBoundingClientRect();
+ this.originalPosition = {
top: rect.top + window.scrollY,
left: rect.left + window.scrollX,
width: rect.width,
height: rect.height
}
+ this.create(image);
+
return this;
}
@@ -33,11 +34,10 @@ export default class Shadow {
shadow.classList.add('libra-shadow');
// style and position shadow image
- const rect = image.getBoundingClientRect();
- shadow.style.top = rect.top + window.scrollY;
- shadow.style.left = rect.left + window.scrollX;
- shadow.style.width = rect.width;
- shadow.style.height = rect.height;
+ shadow.style.top = `${this.originalPosition.top}px`;
+ shadow.style.left = `${this.originalPosition.left}px`;
+ shadow.style.width = `${this.originalPosition.width}px`;
+ shadow.style.height = `${this.originalPosition.height}px`;
shadow.style.zIndex = this.zIndex;
document.body.appendChild(shadow);
@@ -58,7 +58,7 @@ export default class Shadow {
Animation.transformMatrix(
this.element,
- this.startingState,
+ this.originalPosition,
Animation.calculateFinalState(this.element)
);
}