From 045e55ce0547544e064f09f87bd1f75d7fa088b0 Mon Sep 17 00:00:00 2001 From: Hsieh Chin Fan Date: Wed, 2 Oct 2024 15:07:01 +0800 Subject: feat: prevent menu show outside of window --- src/utils.mjs | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/utils.mjs') diff --git a/src/utils.mjs b/src/utils.mjs index d9ed2d7..c9a2457 100644 --- a/src/utils.mjs +++ b/src/utils.mjs @@ -87,3 +87,10 @@ export function throttle (func, delay) { return func.call(context, ...args) } } + +export const shiftByWindow = element => { + const rect = element.getBoundingClientRect() + const offsetX = window.innerWidth - rect.left - rect.width + const offsetY = window.innerHeight - rect.top - rect.height + element.style.transform = `translate(${offsetX < 0 ? offsetX : 0}px, ${offsetY < 0 ? offsetY : 0}px)` +} -- cgit v1.2.3-70-g09d2