universal_table/app/assets/javascripts/mind_map/utils/custom.util.js

18 lines
670 B
JavaScript
Executable File

/**
* 獲取元素相對於指定容器的位置
* Get the relative position of an element within a given container
* @param {HTMLElement} element - 目標元素 (Target element)
* @param {HTMLElement} container - 參考容器 (Reference container)
* @returns {Object} - { left, top, height } 位置資訊 (Position details)
*/
export function getRelativePosition(element, container) {
let nodeRect = element.getBoundingClientRect()
let containerRect = container.getBoundingClientRect()
return {
left: nodeRect.left - containerRect.left,
top: nodeRect.top - containerRect.top,
height: nodeRect.height,
}
}